我有一个使用django-oauth-toolkit构建的 OAuth2 服务器,默认情况下,刷新令牌在使用时会立即被撤销。这意味着如果客户端使用刷新令牌请求新的访问令牌,但由于网络中断而没有收到响应,他们将被迫重新进行身份验证。
该库提供的设置REFRESH_TOKEN_GRACE_PERIOD_SECONDS
是在使用刷新令牌与其撤销之间等待的时间量。如果客户端使用刷新令牌但未收到响应,则该原始刷新令牌仍然有效REFRESH_TOKEN_GRACE_PERIOD_SECONDS
,允许客户端无需重新验证即可获得新的访问令牌。
据我所知,使用时立即撤销刷新令牌的目的是防止重放攻击,但由于该授权服务器专门使用https,因此似乎足以防御此类攻击。
是否存在因刷新令牌撤销的宽限期而导致的其他漏洞?从不撤销刷新令牌会有什么影响?