通过Facebook SSO获得短暂的令牌

时间:2013-12-08 08:53:45

标签: android ios facebook facebook-graph-api

我有一个使用SSO的android / ios Facebook应用程序

客户端然后将访问令牌发送到我的服务器,该服务器调用https://graph.facebook.com/me?access_token=“+ accessToken以使用我的服务验证用户(匹配facebook id)

我的问题是访问令牌有60天的到期日期。这意味着用户可能已从应用程序注销,但访问令牌仍然有效。

我正在寻找的是一种访问令牌,该令牌仅在用户登录应用程序时有效/在1小时。我考虑安全性的原因是,Facebook SSO已经被app用户名/密码所取代,但我认为没有好办法对我的服务器进行身份验证。似乎Facebook SSO对于服务器非常弱的客户端来说是好事。那么访问令牌必须有更多。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

当用户退出您的应用时,您需要做的是revoke the login

修改

来自Facebook documentation on access tokens

  

通过Web登录生成的访问令牌是短期令牌,但您可以将它们升级为长期令牌。将短期令牌转换为长期令牌将在本文档后面的Expiration and Extending Tokens下进行介绍。

     

使用Facebook移动SDK的移动应用程序可获得长寿命令牌。

因此,如果您使用的是SDK,则无法为您的应用生成短期令牌。您可以做的最好的事情是在用户退出应用程序时调用服务器以删除存储的访问令牌。