ASP.NET窗体身份验证身份验证cookie始终是持久性的
问题描述:
我正在尝试使用Asp.Net窗体身份验证在我的项目的登录中实现记住我的功能。问题出在用户登录后,即使浏览器关闭并重新打开,他仍然保持登录状态。看起来,无论用户是否检查过记住我的选项,Auth cookie始终都是持久性的。我不知道我应该怎么做?任何人都可以引导我通过?ASP.NET窗体身份验证身份验证cookie始终是持久性的
我想通常这行代码就足以达到我想要什么:
FormsAuthentication.SetAuthCookie(model.Username, model.RememberMe);
答
这可能是由timeout
属性在Web.config控制
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>
答
这将是如@Matt所示,在Web.config中添加身份验证模式会很有帮助。无论如何,如果你观察与发布的饼干记住上&关切换,你会注意到以下几点: -
记住✕:验证Cookie的属性Expires
:Session
(会话cookie)
记住我✓:验证cookie的Expires
属性:{ UTC Time }
(永久cookie)
会话cookie会,只要在浏览器保持活动状态持续。因此,只有在关闭浏览器窗口(而不是标签)而不是持久性cookie后才会处理cookie。
您可以了解更多关于cookie的概念之下&浏览器行为是: -
+0
对不起,它没有工作,实际上我尝试使用身份验证票与自定义设置以及但没有运气。谢谢 –
对不起它没有工作,但感谢你的答案。 –