2012-08-15 44 views
1

我负责在我正在使用JavaScript API的网站上集成Facebook登录。Facebook JavaScript API登录:我在我自己的应用程序的用户记录中存储了什么?

我可以管理从Facebook返回认证响应。我只是不知道该怎么办。

我需要做的是注册时:

  1. 允许用户使用Facebook登录注册。
  2. 东西在我自己的数据库中的帐户,以便他们通过Facebook登录后查找。

然后当返回到现场:

  1. 建立用户登录到Facebook和获得FB访问令牌。
  2. 安全地,通知我的API用户登录到Facebook,查找他们的帐户,并为我自己的API获取令牌。

我只是存储了Facebook ID并查找了那个,但我意识到这很容易被欺骗。

要做到这一点,最安全的方法是什么?

回答

1

要做到这一点最安全的方法是什么?

恕我直言:做它的服务器端。使用你的应用程序,因为它是签 -

如果你通过了signed_request值通过JS SDK做客户端登录到服务器时,你得到,你可以在那里解码并验证它来检查它的真实秘密,除了你和Facebook(应该)知道的其他人以外。

客户端,你不能确保安全性的那个水平,因为验证请求,也不是没有可能你的应用程序的秘密,但是这并没有什么永远在客户端脚本做。

+0

这很好,任何想法如何做验证?这是一个RSA签名吗? – 2012-08-15 13:42:00

+1

https://developers.facebook.com/docs/authentication/signed_request/ – CBroe 2012-08-15 13:50:52

0

首先,您应该阅读Facebook documentation about authentication with Facebook。并且JavaScript SDK documentation通常这个流程是:

1)通过调用FB.getLoginStatus()来检查它们是否已经注册。如果他们跳到步骤4 2)用户在您的网站上看到使用Facebook Javascript按钮的登录 3)用户单击按钮。它们被发送到Facebook的授权您的应用访问他们的帐户 4)控制返回到您的Open Graph的 5)您的应用程序继续它的快乐的方式与任何需要做

请务必阅读起来在Facebook Permissions,所以你知道什么权限要求。如果您需要额外的权限,则需要再次向用户发送整个授权流程。

相关问题