如何在ASP.NET Core Identity中注销其他用户
如何在ASP.NET Core Identity中注销另一个用户(不是当前记录的用户)。
我知道SignOutAsync()
有一个SignOutAsync()
方法,但似乎没有覆盖接受用户作为参数。 我正在寻找类似的东西:
signInManager.SignOutAsync(user);
首先更新该用户的安全标记:
await userManager.UpdateSecurityStampAsync(user)
然后,在SecurityStampValidationInterval
到达之前,该用户将不会注意到这些更改。 因此,立即注销将其设置Zero
:
services.AddIdentity(identityOptions => { // enables immediate logout, after updating the user's stat. identityOptions.SecurityStampValidationInterval = TimeSpan.Zero; }
更新:对于ASP.NET Core Identity 2.x
services.Configure(options => { // enables immediate logout, after updating the user's stat. options.ValidationInterval = TimeSpan.Zero; });
我想你可能会找到一些撤销function,这会强行注销用户。 目前,它不容易实现,因为无状态连接和基于令牌的(或者我们可以说基于声明的)身份validation的性质。
应该将已撤销的用户访问到令牌validation端点,以便检查令牌是否有效。 在此之前,(1)用户可以显示为已登录,或者(2)我们需要实施客户端(app或web)以非常频繁地访问令牌端点,直到令牌过期或撤销。
SignIn / Out被授予令牌授权的用户身份范围,因此可行的解决方案是使令牌无效。
上述就是C#学习教程:如何在ASP.NET Core Identity中注销其他用户分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1021420.html