Authentication 如何保护OAuth2API不受已删除帐户有效令牌的影响

Authentication 如何保护OAuth2API不受已删除帐户有效令牌的影响,authentication,oauth-2.0,Authentication,Oauth 2.0,我有一个服务器,它通过ouath2身份验证来保护它的api 情景: 用户请求令牌(密码流) 用户停用\删除其帐户 令牌仍然有效(我知道可以使令牌无效,但还有另一种情况,用户从两个不同的客户端(浏览器\移动设备)或两个不同的浏览器生成令牌->接收两个有效令牌->不可能使两个不同的令牌无效,因此其中一个仍然有效) 我应该如何保护我的API不受其所有者不再相关的有效令牌的影响 我是否应该在帐户停用\删除时刻使与用户相关的所有令牌无效?不确定在数据库中存储所有用户的令牌是否是一个好主意 在令牌验证之后,

我有一个服务器,它通过ouath2身份验证来保护它的api

情景:

  • 用户请求令牌(密码流)
  • 用户停用\删除其帐户
  • 令牌仍然有效(我知道可以使令牌无效,但还有另一种情况,用户从两个不同的客户端(浏览器\移动设备)或两个不同的浏览器生成令牌->接收两个有效令牌->不可能使两个不同的令牌无效,因此其中一个仍然有效)
  • 我应该如何保护我的API不受其所有者不再相关的有效令牌的影响

  • 我是否应该在帐户停用\删除时刻使与用户相关的所有令牌无效?不确定在数据库中存储所有用户的令牌是否是一个好主意
  • 在令牌验证之后,我是否应该检查用户是否仍处于活动状态?对于这样一个最终案例来说,这是一个很大的开销
  • *在所有用户相关数据都被删除的情况下,没有问题(api的响应将为空),但在某些情况下,这些数据不会被删除


    谢谢

    您可以缩短访问令牌的生存期,并将其与刷新令牌结合使用。您的信息只有在访问令牌的生命周期内才会过时,因此请将其设置为您认为可以接受的任何值,代价是您的客户端必须返回授权服务器以获取新的访问令牌(这是进行已删除帐户检查的地方)。请参阅: