在这种情况下,我有一个应用程序,其中:
用户将使用移动设备上的Facebook Single Sign On(SSO)登录(在本例中为iOS)。
然后将返回的Facebook凭据发送到NodeJS服务器(使用相同的Facebook应用程序密钥),并且需要在用户Facebook凭据与基于程序的帐户关联之前进行验证。
问题:
鉴于认证结果可以访问Facebook返回的所有内容,如何使用这些数据来确认Facebook的授权?
答案 0 :(得分:2)
您可以做两件事:
Facebook通常会向您传递signed request,您可以使用基本的SHA2哈希来检查。如果哈希是正确的,您可以假设用户确实使用Facebook进行了身份验证。
Facebook通常也会传递给你access token的{短暂的} exchange for a longer lived access token using the graph api。{{3}}。在完成此交换后,您确信用户就是他所说的那样。
答案 1 :(得分:2)
https://graph.facebook.com/me?access_token=TOKENGOESHERE
如果用户被退回,并且他们的ID是客户声称的,那么他们很可能是他们所说的人。