我们的应用程序中有一项要求: 当用户更改其密码时,应重新设置所有其他设备或计算机的其他登录名已认证(除当前用户的会话)。如何在使用Jersey和OAuth2更改密码时撤销用户的所有令牌
我在下面看到(下面提供的链接和引用的段落是相关的),并得到了这样的想法:撤销用户的所有令牌。
但不知道如何实现这一点(撤销所有的令牌)。我们正在使用Jersey和OAuth2。 撤销令牌意味着从会话和cookie中删除现有的访问令牌/刷新令牌。那么换成新的令牌?
感谢
Best practice for REST token-based authentication with JAX-RS and Jersey
[与JAX-RS新泽西州的REST基于令牌的认证和最佳实践]使用撤销凭证与智威汤逊
如果你想撤销令牌,你必须保持他们的轨道。您不需要在服务器端存储整个令牌,只存储 令牌标识符(必须是唯一的)和一些元数据(如果需要)。 对于令牌标识符,您可以使用UUID。
应该使用jti声明将标记标识符存储在 标记中。在验证令牌时,通过检查您在服务器端的令牌标识符 上的jti声明值,确保它未被吊销 。
出于安全考虑,当用户更改其密码时撤销所有令牌。