首页 文章

OAuth:在刷新时重新发出相同的访问令牌

提问于
浏览
0

我正在使用spring oauth实现一个oauth服务器 . 我注意到,如果未从令牌 endpoints 过期,spring的实现将重新发出相同的访问令牌 . 但是,在刷新访问令牌时,行为会有所不同 . 每次重新发布一个新令牌,如果我在收到有效刷新请求时重新发出相同的未过期访问令牌,是否有任何问题需要记住 .

1 回答

  • 0

    OAuth Spec section-6指定:

    授权服务器可以发出新的刷新令牌,在这种情况下,客户端必须丢弃旧的刷新令牌并将其替换为新的刷新令牌 . 授权服务器可以在向客户端发出新的刷新令牌后撤销旧的刷新令牌 . 如果发出新的刷新令牌,则刷新令牌范围必须与请求中客户端包含的刷新令牌的范围相同 .

    似乎没有要求访问令牌是全新的 .

    我认为主要关注的是确保您不会更改现有令牌的到期日期 . 并且您正确地向客户端返回一个准确的 expires_in 属性,该属性反映了令牌何时到期 .

    此外,它可能使语义混淆客户端 . 刷新通常在令牌过期时完成,客户端需要新的令牌 .

    我可以想象一些奇怪的边缘情况 . 客户端可以在它到期前几秒发送刷新令牌的请求(对于客户端来说是完全有效的逻辑),但仍然会收到几乎已过期的相同令牌 .

相关问题