刷新令牌和访问令牌之间的区别

Nis*_*sar 5 token jwt asp.net-web-api

我找不到任何使用刷新令牌的理由。当我们可以让 access_token长久存在时...

为什么我们两者都有?

Nko*_*osi 8

由于您JWT在问题上有一个标签,我假设您指的是Json Web Tokens

以下内容参考自

刷新令牌:何时使用它们以及它们如何与 JWT 交互

  • 访问令牌携带直接访问资源所需的信息。换句话说,当客户端将访问令牌传递给管理资源的服务器时,该服务器可以使用令牌中包含的信息来决定客户端是否被授权。访问令牌通常有一个过期日期并且是短暂的

  • 刷新令牌携带获取新访问令牌所需的信息。换句话说,每当需要访问令牌来访问特定资源时,客户端都可以使用刷新令牌来获取由身份验证服务器颁发的新访问令牌。常见用例包括在旧访问令牌过期后获取新的访问令牌,或者首次访问新资源。刷新令牌也可能会过期,但寿命相当长。刷新令牌通常受到严格的存储要求,以确保它们不被泄露。它们也可能被授权服务器列入黑名单。

第二个参考文献也是关于短期访问令牌和长期刷新令牌的有趣读物。 为什么 OAuth v2 同时具有访问令牌和刷新令牌?

撤销:如果访问令牌是自包含的,则可以通过不颁发新的访问令牌来撤销授权。资源不需要查询授权服务器来查看访问令牌是否有效。这简化了访问令牌验证,并且更容易扩展和支持多个授权服务器。访问令牌在一段时间内有效,但授权会被撤销。

希望这可以帮助。