启用了slidingExpiration的FormsAuthentication不会在每个请求中返回cookie。

时间:2011-09-26 11:18:52

标签: asp.net authentication forms-authentication httpcookie

我有一个带有FormsAuthentication的web应用程序,并且我的web.config中的slidingExpiration="true"没有在每个请求中返回一个cookie,但当我看到HTTP事务时,我看不到webserver在每个请求中返回AUTH cookie请求。

检查docs,它应该。

  

slidingExpiration可选属性。指定是否滑动   到期已启用。滑动到期会重置活动状态   cookie期间的每个请求到期的身份验证时间   单次会议。此属性可以是以下值之一。   值说明True指定启用滑动过期。   身份验证cookie将刷新,到期时间为   在单个会话期间重置后续请求。 False指定   没有启用滑动到期,并且cookie在一个集合中到期   从最初发布cookie开始的时间间隔。默认   是真的。

有谁知道为什么它没有按预期工作?

干杯。

2 个答案:

答案 0 :(得分:7)

我读过这个:http://www.dotnetmonster.com/Uwe/Forum.aspx/asp-net-security/2316/problem-with-slidingExpiration

  

换句话说,如果创建故障单后经过的时间更长   然后一半的票超时(在你的情况下将是1分钟)   门票不会续签。否则将授予新票   新的超时(在你的情况下2分钟)。总结一下,如果你打了   您的页面在1分钟后,它将不会延长您的Forms会话生命周期   无论你的slideExpiration设置如何。

这很有意义,但我找不到任何官方消息来源。所以,当我有空余时间时,我会自己测试一下。

干杯。

答案 1 :(得分:0)

只有在创建Cookie的过程中有一半的时间过后才会发布新Cookie。