我有一个应用程序,要求经过身份验证的用户访问我的api,我正在考虑使用Facebook登录和Google登录作为身份验证选项...

阅读了最佳实践:facebook security best practices,我可以使用Facebook的访问令牌来实现这一目标,但有两个问题:

  • 由Facebook Android SDK获得的访问令牌是'long-lived'类型,这意味着它们会在60天后过期......如果某个令牌被盗,该应用程序将被泄露60天......

  • 我需要将token_secret存储在客户端 . 虽然我仍然不确定它是如何存储在客户端上的,但是从安全的角度来看,将密钥存储在客户端上并不是一个好主意 .

话虽如此,我还有几个问题:

  • 这是最安全的选择吗?

  • 有没有办法通过Facebook SDK检索短期访问令牌?如果没有,我可以从Facebook-Android-SDK获得什么好处,因为我将不得不通过webview手动实现自定义登录流程...

  • 如果我采用这种方式,就没有可能使用Facebook SSO,对吗?

提前致谢 .