【问题标题】:Can I create a short-lived, limited access token from a long-lived one?我可以从长期存在的访问令牌中创建一个短期的、有限的访问令牌吗?
【发布时间】:2013-08-30 17:07:28
【问题描述】:

如果我的 Web 应用程序的后端有一个用户的长期访问令牌,我可以使用它来创建一个短期访问令牌以传递给客户端(网页),以便它与 Facebook API 交互?

更好的是,即使我的服务器上的长期访问令牌具有更多权限,我是否可以创建一个既短命且范围有限(例如只有 user_photos 范围)的令牌?

【问题讨论】:

  • 将 JS SDK 嵌入到您的页面中,如果用户已经授权您的应用一次(并且如果没有服务器端会话已经存在长期令牌),则会自动为您获取一个短期令牌存储)。但是你不能要求一个权限较少的新的。 (您可以删除权限,但这也会使您失去长期存在的权限。)
  • 您的用例是什么?您的应用是否将访问令牌泄露给第三方?
  • @CBroe 我不希望前端依赖于用户在连接后登录到正确的 Facebook 帐户。例如,如果我使用朋友的电脑,他们可能已经登录 Facebook(并已授权我们的应用程序),但如果我以我的身份登录我们的网站,它应该使用Facebook API 就像我一样。

标签: facebook facebook-access-token


【解决方案1】:

根据this API flow,一种选择是使用我服务器的长期访问令牌创建一个新的长期访问令牌并交给页面上的 JavaScript。

它会起作用,但我不喜欢分发具有完全权限的长期令牌的想法。

【讨论】:

    【解决方案2】:

    一种选择是为登录用户代理 Facebook API。我会在我们的网站上使用您存储的长期访问令牌调用 Facebook 的特定端点。

    从安全的角度来看,这很有效,听起来不错,但它的工作量更大,灵活性很小。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-10
      • 2012-08-22
      • 2012-03-07
      • 1970-01-01
      • 1970-01-01
      • 2014-02-27
      • 1970-01-01
      • 2012-08-25
      相关资源
      最近更新 更多