OAuth授权代码应何时过期?

时间:2019-03-13 09:42:25

标签: oauth oauth-2.0 authorization access-token refresh-token

我知道(在OAuth中使用授权代码“授权代码”时),访问令牌的生存期应该很短,但是刷新令牌的生存期可以很长。 所以我决定参加我的项目:

  • 访问令牌生存期:1天
  • 刷新令牌寿命:30天

但是授权代码的典型生存期是多少? 我应该说它真的很短吗? 也许只需要1个小时,甚至只有几分钟?

为此,我找不到任何“最佳实践”。

2 个答案:

答案 0 :(得分:3)

所有这些都是标准的,但在大多数身份/身份验证服务器中都是可配置的。

授权码

当用户同意应用程序访问其数据时,他们将获得授权码。这段代码通常只能使用五分钟。低于此值的任何情况都可能会导致时钟偏斜问题,并且IMO没有理由将其更长。

访问令牌

访问令牌在交换授权码后返回。访问令牌。访问令牌通常最多只能使用60分钟。

刷新令牌

刷新令牌是长期存在的令牌。以下是谷歌的标准。

  • 刷新令牌可以使用六个月,但这一次正在下滑。
  • 如果一个应用程序六个月未使用刷新令牌,则该访问将被撤消。
  • 用户也可以随时撤消访问权限。
  • 取决于请求的范围。用户更改密码后,某些刷新令牌会过期

同样,以上只是Google标准。在身份服务器上,我在工作。我认为当前设置是刷新令牌过期后的一个月不使用。

答案 1 :(得分:0)

只是在另一个站点上找到了答案:

  

授权码必须在发布后不久过期。 OAuth 2.0规范建议最长生存期为10分钟,但是实际上,大多数服务将有效期设置得更短,大约30-60秒

来源:https://www.oauth.com/oauth2-servers/authorization/the-authorization-response/