正在研究如何与JWT一起工作,但发现对我而言并不明显: 为什么要刷新访问令牌而不同时使用访问令牌和刷新令牌,而只使用刷新令牌?
在这种情况下,我们将能够:
答案 0 :(得分:1)
您的问题尚不清楚,并假设有些事情可能不正确。访问令牌和刷新令牌都不必是JWT,JWT也不是特定于OAuth2的(OAuth2定义了访问令牌和刷新令牌,但未说明应如何实现)。
访问令牌和刷新令牌的受众也有所不同-访问令牌被发送到(可能是单独的)资源服务器(如果发行授权服务器是自包含的,则发行授权服务器甚至可能没有保留副本)。刷新令牌将发送到授权服务器。
在数据库中定位任何一种令牌(假设它们不是像JWT一样的自包含令牌)都不会成为问题,因为它们应该是唯一的令牌,它们是数据库表的理想主键。因此,没有理由发送过期的访问令牌作为刷新请求的一部分。
顺便说一句,欢迎您使用Stack Overflow。