Facebook JS SDK的安全问题

时间:2015-04-28 12:45:04

标签: php jquery facebook facebook-graph-api facebook-javascript-sdk

我正在使用facebook JS sdk登录用户。这些是我遵循的步骤: -

1)我使用FB.login(...)来获取用户的详细信息 2)现在,在收到Facebook的详细信息后,我使用jQuery的$.post(..)函数发送POST请求到php页面说FBUser.php,参数为name,{{ 1}}(Facebook用户ID),uidemail access_token 3)现在在publish_actions页面中,我执行所有操作,例如将短期令牌转换为长期令牌,然后检查我的{{1}中是否存在FBUser.php收到的内容}表。如果不是,我创建一个新用户,否则我登录旧用户。

今天,我刚刚意识到我正在做出如此大的安全性妥协,因为任何人都可以通过uid现有用户向users页面发送POST请求并获取访问他的帐户。但是,另一方面,我确信一些大型网站也使用JS SDK。显然,我错了。安全登录用户并防止他的帐户遭到入侵的正确程序是什么?

2 个答案:

答案 0 :(得分:1)

您应首先匹配应用和用户ID,然后应检查访问令牌,如下所示: graph.facebook.com/debug_token?input_token={token-to-check}&access_token={app-token}

您可以从https://developers.facebook.com/tools/accesstoken/

获取应用令牌

答案 1 :(得分:1)

您可以使用发送给您的访问令牌获取用户的uid,方法是使用此令牌访问Facebook图表并查询" / me"。 您不应该在客户端发送的uid上进行中继。我的应用程序只接收访问令牌,并从服务器到服务器的调用中获取其余数据。