6

我正在为我的 Android 应用程序使用 Facebook 身份验证。

我使用 facebook ID [通过 HTTP Post to Web API with facebook-id] 在我的应用程序中对用户进行身份验证。因此,如果有人知道我的应用程序中任何用户的 facebook-id,他们可以轻松地发布到允许他们访问应用程序的 URL。

有什么推荐的方法吗?

4

2 回答 2

2

一旦你进行了登录 POST,facebook 会给你一个 authtoken,它是唯一的,但它会在某个时候过期。基于这个令牌生成一个临时的“session_key”(它可以是 md5(facebook_token + user_id),将此 session_key 存储在您的数据库中并将其发送回您的应用程序。

对于从应用程序到您的服务器的每个请求,您必须发送此 session_key 和用户名。在服务器端,您必须检查 session_key 是否在您的数据库中以及是否已分配给“user_id”。

如果一切正常,您可以继续操作,否则返回错误消息。

当用户注销时,删除这个 session_key(当他用 facebook 登录时会重新生成)。

希望这会有所帮助。

于 2012-07-10T14:35:53.607 回答
1

当用户登录 Facebook 时,它会为您提供身份验证令牌和 facebook id。在您的应用服务器中验证令牌是否属于用户 [通过 https://graph.facebook.com/me?accesstoken=]。如果有效,请授予他访问权限。

于 2012-07-18T13:16:51.700 回答