我知道(当在OAuth中使用授权码“Authorization code”时),访问令牌的生命周期应该很短,但刷新令牌的生命周期可以很长。因此,我决定为我的项目:
但是授权码的典型寿命是多少呢?我说的应该非常非常短吗?可能是1个小时甚至几分钟?我找不到任何“最佳实践”。
ijnw1ujt1#
所有这些都是标准的,但在大多数身份/认证服务器中是可配置的。
当用户同意一个应用程序访问他们的数据时,他们会被返回一个授权代码。这个代码只使用它通常好五分钟。任何低于这个可能会导致你的时钟偏移问题,真的没有理由IMO它更长。
在交换授权码后返回访问令牌。访问令牌。访问令牌通常只在60分钟内有效。
刷新令牌是长期令牌。以下是谷歌的标准。
同样,以上只是谷歌的标准。在我工作时使用的身份服务器上。我认为当前的设置是一个月不使用一个刷新令牌到期。
zysjyyx42#
刚在其他网站找到答案:授权码必须在发出后不久过期。OAuth 2.0规范建议最大生存时间为10分钟,但实际上,大多数服务将过期时间设置得短得多,大约30-60秒。来源:https://www.oauth.com/oauth2-servers/authorization/the-authorization-response/
20jt8wwn3#
这取决于提供商。对于一些提供商,它只起作用一次。一旦你交换了访问和刷新令牌的授权码,它就会过期,你不能第二次使用它。
3条答案
按热度按时间ijnw1ujt1#
所有这些都是标准的,但在大多数身份/认证服务器中是可配置的。
授权码
当用户同意一个应用程序访问他们的数据时,他们会被返回一个授权代码。这个代码只使用它通常好五分钟。任何低于这个可能会导致你的时钟偏移问题,真的没有理由IMO它更长。
访问令牌
在交换授权码后返回访问令牌。访问令牌。访问令牌通常只在60分钟内有效。
刷新令牌
刷新令牌是长期令牌。以下是谷歌的标准。
同样,以上只是谷歌的标准。在我工作时使用的身份服务器上。我认为当前的设置是一个月不使用一个刷新令牌到期。
zysjyyx42#
刚在其他网站找到答案:
授权码必须在发出后不久过期。OAuth 2.0规范建议最大生存时间为10分钟,但实际上,大多数服务将过期时间设置得短得多,大约30-60秒。
来源:https://www.oauth.com/oauth2-servers/authorization/the-authorization-response/
20jt8wwn3#
这取决于提供商。对于一些提供商,它只起作用一次。一旦你交换了访问和刷新令牌的授权码,它就会过期,你不能第二次使用它。