我正在为我的 Android 应用程序使用 Facebook 身份验证。
我使用 facebook ID [通过 HTTP Post to Web API with facebook-id] 在我的应用程序中对用户进行身份验证。因此,如果有人知道我的应用程序中任何用户的 facebook-id,他们可以轻松地发布到允许他们访问应用程序的 URL。
有什么推荐的方法吗?
我正在为我的 Android 应用程序使用 Facebook 身份验证。
我使用 facebook ID [通过 HTTP Post to Web API with facebook-id] 在我的应用程序中对用户进行身份验证。因此,如果有人知道我的应用程序中任何用户的 facebook-id,他们可以轻松地发布到允许他们访问应用程序的 URL。
有什么推荐的方法吗?
一旦你进行了登录 POST,facebook 会给你一个 authtoken,它是唯一的,但它会在某个时候过期。基于这个令牌生成一个临时的“session_key”(它可以是 md5(facebook_token + user_id),将此 session_key 存储在您的数据库中并将其发送回您的应用程序。
对于从应用程序到您的服务器的每个请求,您必须发送此 session_key 和用户名。在服务器端,您必须检查 session_key 是否在您的数据库中以及是否已分配给“user_id”。
如果一切正常,您可以继续操作,否则返回错误消息。
当用户注销时,删除这个 session_key(当他用 facebook 登录时会重新生成)。
希望这会有所帮助。
当用户登录 Facebook 时,它会为您提供身份验证令牌和 facebook id。在您的应用服务器中验证令牌是否属于用户 [通过 https://graph.facebook.com/me?accesstoken=]。如果有效,请授予他访问权限。