refresh_token 是不是应该刷新未过期的访问令牌

Posted

技术标签:

【中文标题】refresh_token 是不是应该刷新未过期的访问令牌【英文标题】:Should refresh_token refresh non-expired access tokenrefresh_token 是否应该刷新未过期的访问令牌 【发布时间】:2020-10-01 10:49:16 【问题描述】:

答案对某些人来说可能是显而易见的,但我无法在 OAuth 2.0 规范中找到明确说明。假设客户端被授予访问令牌及其到期时间和刷新令牌。如果在现有访问令牌仍然有效的情况下出于某种原因发出 refresh_token 请求会发生什么?服务器应该使用旧的访问令牌(过期时间缩短)进行响应,还是毫不费力地生成新的访问令牌?

【问题讨论】:

【参考方案1】:

由于服务器处理了一段时间,许多访问令牌对有效性进行检查可能比发布新令牌更耗费资源。我认为如果需要,它应该只给你一个新的。

想到的另一个用例是客户端可能已请求新令牌,因为原始访问令牌已被泄露。

【讨论】:

以上是关于refresh_token 是不是应该刷新未过期的访问令牌的主要内容,如果未能解决你的问题,请参考以下文章

实现永不过期的 OAuth 刷新令牌

刷新令牌是不是需要过期的 JWT 才能创建新的访问令牌?

通过 Keycloak 中的 refresh_token 刷新 access_token

为啥刷新令牌过期不返回?

JWT, 为啥需要刷新令牌?

jwt中为什么用refresh_token去刷新access_token,直接把access_token的有效期设置长一点不行吗?