授权代码授权:当用户不在时,如何获取访问令牌?

问题描述 投票:1回答:1

我想要求用户仅授权我的应用程序一次,然后即使他未连接执行自动操作,也能够使用他的凭据进行DocuSign API调用。

我目前正在使用授权代码授权,但我怎么能永远不要求用户再次授权我的应用程序?

oauth-2.0 authorization docusignapi
1个回答
1
投票

一个很好的问题。这是一个答案:

  1. 在向用户使用授权代码授权时,除了范围extended之外还包括范围signature
  2. 在用户进行身份验证并授予同意后,您的应用将收到一个访问令牌(适用于8小时)和刷新令牌(适用于30天)。
  3. 然后,当您的应用需要使用DocuSign API时,请使用访问令牌(无论用户是否存在)。如果它不起作用,则使用“刷新操作”获取新的访问令牌(适用于8小时)和新的刷新令牌(从刷新操作开始30天内有效)

结果:您的应用程序将始终能够使用其当前访问令牌为用户代表用户执行操作,或者将能够获取新的访问令牌以供使用。

警告:您的应用程序需要每30天至少使用一次刷新操作,否则刷新令牌将过期。在这种情况下,用户需要通过您的应用程序和授权代码授权流程重新进行身份验证。

拐角案件:由于用户可以随时撤销同意,您的应用程序应该优雅地处理该案件。

注意由于刷新令牌持续30天,因此您需要将其存储在持久存储(例如DBMS)中,而不仅仅存储在内存中。

© www.soinside.com 2019 - 2024. All rights reserved.