OAuth 客户端凭据重新颁发访问令牌与刷新令牌
Posted
技术标签:
【中文标题】OAuth 客户端凭据重新颁发访问令牌与刷新令牌【英文标题】:OAuth Client Credentials Reissue Access Token vs. Refresh Token 【发布时间】:2019-05-24 23:22:09 【问题描述】:阅读一些关于 Oauth 2 流程中刷新令牌用途的类似帖子,它们对于用户参与的身份验证(例如用户名和密码)有意义,但对于 Oauth2 客户端凭据流程,为什么要冒险使用刷新令牌有吗?
与通过客户端 ID 和客户端机密身份验证获取访问令牌相比,使用刷新令牌在过期后获取新的访问令牌是否会更小或更快?
引用的帖子:
Why Does OAuth v2 Have Both Access and Refresh Tokens? what's the point of refresh token?【问题讨论】:
【参考方案1】:短小精悍的是——客户端可以在不涉及资源所有者的情况下代表自己行事;只需像以前一样请求新的访问令牌。
...但是对于 Oauth2 客户端凭据流程,为什么要冒险使用 完全刷新令牌?
很好的观察;客户端凭据流不会发出刷新令牌。在没有资源所有者的情况下,假设客户端可以根据需要请求新的访问令牌是合理的。
系统压力是否更小,或者使用刷新令牌更快? 过期后获取新的访问令牌,而不是获取 通过客户端ID和客户端秘密身份验证访问令牌?
虽然刷新令牌的处理速度肯定是特定于实现的,但处理刷新令牌的速度可能比请求新访问令牌的速度要慢一些。这是因为客户端能够直接请求访问令牌,而无需针对调用客户端验证刷新令牌。
【讨论】:
以上是关于OAuth 客户端凭据重新颁发访问令牌与刷新令牌的主要内容,如果未能解决你的问题,请参考以下文章
Oauth2/Openid 连接。如何撤销未知的访问/刷新令牌