当前位置:  开发笔记 > 编程语言 > 正文

如何在ASP.NET Core Identity中注销其他用户

如何解决《如何在ASP.NETCoreIdentity中注销其他用户》经验,为你挑选了1个好方法。



1> VahidN..:

首先更新该用户的安全标记:

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;   
});


使用零值将严重影响站点性能.
此处正确无误-它的查询不止一个-在ASP.NET Core 2.X(AspNetUser,AspNetUserClaims,AspNetUserRoles,AspNetRoles,AspNetRoleClaims)上计算了5个额外查询
AFAIK,这将导致针对每个用户的每个请求针对用户“变更”的数据库查询,并且这将影响对Webapp的所有请求。
推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有