新创建的身份验证票证中的到期日期(asp.net表单身份验证)

时间:2009-02-19 08:21:58

标签: asp.net cookies forms-authentication

我正在使用asp.net表单身份验证和asp.net登录控件。登录控件有一个“RememberMe”复选框。

用户通过身份验证后,会引发LoggedIn(对象发件人,EventArgs e)方法,在此方法中,我正在查看使用此方法创建的身份验证cookie

HttpCookie authCookie = FormsAuthentication.GetAuthCookie(userName, true);

当我检查authCookie.Expires值时,我预计在未选中RememberMe时为30分钟,而在选中RememberMe时为50年(根据MS文档,这些是默认值)

但无论我是否检查RememberMe,它总是30分钟。我检查了我的web.config,我没有为“超时”字段设置任何东西,所以我不知道为什么会发生这种情况。任何想法?

1 个答案:

答案 0 :(得分:1)

这非常令人困惑,但看起来我必须在身份验证/表单部分下的web.config中设置“timeout”和“slidingExpiration”以使RememberMe部分正常工作

我有这样的设置,一切都按预期工作

slidingExpiration="true" timeout="5120" 
rick strahl的博客帮助我找到答案 http://www.west-wind.com/WebLog/posts/157861.aspx