繁体   English   中英

身份是经过身份验证的cookie

[英]Identity isAuthenticated cookie

我有一个关于ASP.NET身份提供程序的问题。 我已经建立了一个系统,您可以对用户和角色执行CRUD操作,但我遇到了问题。 如果我要删除已经过身份验证(登录)的用户,他仍然可以在网站上执行操作,因为他仍然在本地计算机上保留身份验证和授权cookie。 当用户注销时,他无法再访问该站点。

我的问题:有没有办法在请求页面时这样做,它会检查用户是否存在于数据库中? 另一种方法可能是不存储“角色”cookie并检查(通过数据库)用户是否具有访问页面所需的角色。 我不知道如何配置它。 任何帮助表示赞赏。

我们专门针对此场景添加了SecurityStampValidator,基本上您将CookieMiddleware配置为检查用户是否仍然有效。

看到这个问题: 什么是SecurityStamp

我相信如果你在<roleManager>标签上的web.config中设置cacheRolesInCookie="false" ,你将获得所需的效果。 然后,您将能够处理不再存在于db中的用户,并根据需要重定向(ex)用户。

我发现,安装和通过Microsoft ASP.NET身份样本阅读2.0.0-β2这里找到: https://www.nuget.org/packages/Microsoft.AspNet.Identity.Samples结合阅读本: https://开头aspnet.codeplex.com/SourceControl/latest#Samples/Identity/SingleSignOutSample/对解决我的问题非常有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM