我使用MVC 5默认模板"个人帐户"选择进行身份验证它使用ASP .NET Identity with Entity Framework。
使用Chrome我打开了应用并注册了用户,然后使用该用户登录。我不小心删了数据库。现在,当我再次在Chrome中打开应用程序时,它仍然显示我已登录,因为auth cookie仍然存在于浏览器中。但是,登录的用户不存在于数据库中。
这是正确的行为吗?
如果没有,那么有关如何预防的建议吗?
答案 0 :(得分:2)
这是正确的行为。只要auth cookie有效且未过期,您的应用就会假定用户已通过身份验证。
当你禁用或(软)删除用户时,你应该调用UserManager.UpdateSecurityStamp(string userId)
,这会导致auth cookie在下次检查时无效。