Authentication Asp.NET身份Cookie身份验证

Authentication Asp.NET身份Cookie身份验证,authentication,asp.net-identity,Authentication,Asp.net Identity,我使用MVC5默认模板,选择“个人帐户”进行身份验证。它使用ASP.NET标识和实体框架 我使用Chrome打开应用程序,注册了一个用户,然后用该用户登录。我不小心删除了数据库。现在,当我再次在Chrome中打开应用程序时,它仍然显示我已登录,因为auth cookie仍然存在于浏览器中。但是,数据库中不存在登录的用户 这是正确的行为吗?如果不是,那么有什么建议可以防止吗?这是正确的行为。只要身份验证cookie有效且未过期,您的应用程序就会假定用户已通过身份验证 禁用或(软)删除用户时,应调用

我使用MVC5默认模板,选择“个人帐户”进行身份验证。它使用ASP.NET标识和实体框架

我使用Chrome打开应用程序,注册了一个用户,然后用该用户登录。我不小心删除了数据库。现在,当我再次在Chrome中打开应用程序时,它仍然显示我已登录,因为auth cookie仍然存在于浏览器中。但是,数据库中不存在登录的用户


这是正确的行为吗?
如果不是,那么有什么建议可以防止吗?

这是正确的行为。只要身份验证cookie有效且未过期,您的应用程序就会假定用户已通过身份验证


禁用或(软)删除用户时,应调用
UserManager.UpdateSecurityStamp(string userId)
,这会导致身份验证cookie在下次检查时无效。

想象一个场景,用户登录,其帐户被管理员挂起或删除。然后,在下一次服务器调用时,用户应该被踢出,但这不会发生。我不知道是否有一个干净的方法可以做到这一点。完美,这就是我一直在寻找的。谢谢你,马丁!