如何撤销Identityserver4中的刷新令牌?
我需要按用户和客户端撤销刷新令牌。但我不知道该怎么做 我可以使用刷新令牌吗 或者我需要写代码。我在Identity中使用EF,在startup中我有:如何撤销Identityserver4中的刷新令牌?,identityserver4,Identityserver4,我需要按用户和客户端撤销刷新令牌。但我不知道该怎么做 我可以使用刷新令牌吗 或者我需要写代码。我在Identity中使用EF,在startup中我有: AddOperationalStore(options => ....) 删除令牌似乎有两种选择: IPersistentGrantStore:RemoveAllAsync(字符串主体ID、字符串客户端ID) IRefreshTokenStore:RemoveRefreshTokensAsync(字符串subjectId、字符串cli
AddOperationalStore(options => ....)
删除令牌似乎有两种选择:
- IPersistentGrantStore:RemoveAllAsync(字符串主体ID、字符串客户端ID)
- IRefreshTokenStore:RemoveRefreshTokensAsync(字符串subjectId、字符串clientId)
或者我应该按照中所述实现删除的代码吗?如果需要撤销给定SubjectId/ClientId组合的所有标记,则不能使用问题中列出的撤销端点。这是为了撤销一个标记 您链接的文章是关于不使用ASP.NET核心标识的。这是另一回事,应该不会影响您删除用户所有刷新令牌的愿望
方法确实是使用
IRefreshTokenStore.RemoveRefreshTokensAsync
方法,您可以在其中提供SubjectId和ClientId。这并不需要“撤销”标记,而是将它们全部从数据库中删除。如果需要撤销给定SubjectId/ClientId组合的所有标记,则不能使用问题中列出的撤销端点。这是为了撤销一个标记
您链接的文章是关于不使用ASP.NET核心标识的。这是另一回事,应该不会影响您删除用户所有刷新令牌的愿望
方法确实是使用
IRefreshTokenStore.RemoveRefreshTokensAsync
方法,您可以在其中提供SubjectId和ClientId。这并不需要“撤销”令牌,而是将它们全部从数据库中删除。这是一篇很长的文章,请尽量具体一些。您可能希望包含您认为相关的代码部分(来自文章)。好的,也许这个问题不相关。我想按subjectId和clientId删除刷新令牌。我应该实现哪种方法以及如何调用它?IRefreshTokenStore:RemoveReshTokensAsync调用IPersistentGrantStore:RemoveAllAsync,但我建议使用您注册的IRefreshTokenStore进行调用,因为它处于更高的抽象级别。这是一篇很长的文章,请尝试更具体一些。您可能希望包含您认为相关的代码部分(来自文章)。好的,也许这个问题不相关。我想按subjectId和clientId删除刷新令牌。我应该实现哪个方法以及如何调用它?IRefreshTokenStore:RemoveReshTokensAsync调用IPersistentGrantStore:RemoveAllAsync,但我建议使用您注册的IRefreshTokenStore进行调用,因为它处于更高的抽象级别