0

我正在对 Cookie/FormsAuthenticationTicket/Session 超时进行一些测试。在我的测试中,我发现了一些非常有趣的东西。

  • 创建会话 Cookie
  • cookie.Expires = DateTime.MinValue;
  • 创建一个有效期为 5 分钟的 FormsAuthenticationTicket
  • 将 web.config 中的 Session Timeout 设置为 3 分钟
  • 然后我创建了一个 asp.net 按钮,它只是调用Response.Redirect(Request.RawUrl);来刷新页面以查看我是否仍在页面的安全部分。

    如果我不断刷新页面 FormsAuthenticationTicket 持续时间超过 5 分钟。

    所以我的问题是:

  • 我假设这是设计使然,但这是真的吗?
  • 这是因为这是一个会话 cookie 吗?
  • 如果是因为它是会话 cookie,那么非会话 cookie 的预期行为是什么?
  • 4

    1 回答 1

    0

    如评论中所述,这是由于滑动到期的默认值为 true:http: //msdn.microsoft.com/en-us/library/system.web.configuration.formsauthenticationconfiguration.slidingexpiration.aspx

    谢谢!

    于 2013-04-16T13:46:51.247 回答