使Asp.net-Identity中的OAuth令牌无效

本文关键字:令牌 无效 OAuth 中的 Asp net-Identity | 更新日期: 2023-09-27 18:04:40

我想使Asp.net-Identity中的承载令牌无效。我尝试调用UpdateSecurityStampAsync(userId),我可以看到我的用户的安全戳得到更新。但是旧的代币仍然有效。这只会使cookie身份验证无效吗?

有可能用另一种方法解决吗?

使Asp.net-Identity中的OAuth令牌无效

您可以通过在令牌中包含SecurityStamp(或它的一些散列)来实现这一点。然后,您可以创建自己的OnReceive处理程序,该处理程序根据数据库验证该用户的SecurityStamp。

这样做的缺点是每个请求都有一个数据库命中,所以它首先消除了使用承载令牌的一个主要好处。

实际上,您将把承载令牌和刷新令牌的职责合并为一个令牌。

使用刷新令牌代替,它提交的频率要低得多,将会有更高的性能,它不会真正需要更多的编码,这是一个相当广泛认可的安全流模型。

开箱即用是不可能使令牌无效的,因为它们是由服务器的machinekey生成的。