为什么API不使用访问令牌而是使用刷新令牌?

3

我已经看了:

为什么OAuth v2同时有访问和刷新令牌?

https://auth0.com/blog/refresh-tokens-what-are-they-and-when-to-use-them/

根据我的理解,这就是OAuth v2的工作方式:

1)用户发送他的凭证到服务器,服务器验证并返回一个access_token和一个refresh_token

2)用户随后在请求中加入这个access_token来标识自己

3)当 access_token 过期时,用户使用 refresh_token和其他必要参数向服务器发送另一个请求,以获取新的access_tokenrefresh_token

我的问题是:

为什么需要单独一个refresh_token?不能发送即将过期的旧access_token来获取新的吗?

使用refresh_token的额外优势是什么?

1个回答

2
访问令牌理论上更加灵活。它可以存在于浏览器、客户端的服务器端、授权服务器或资源服务器中。每个API请求都将附带访问令牌,而刷新令牌应该使用得更少。
以下是来自网络的一些引用...
与访问令牌不同,刷新令牌仅用于授权服务器,并且永远不会发送到资源服务器。 https://www.rfc-editor.org/rfc/rfc6749#section-10.4 [刷新令牌]通常受到严格的存储要求,以确保它们不会泄露。 https://auth0.com/learn/refresh-tokens/ 基本上,如果我们只有访问令牌,则攻击面会更大。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接