5

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

检查文档,它应该。

slipExpiration 可选属性。指定是否启用滑动到期。滑动到期重置活动身份验证时间,以便 cookie 在单个会话期间在每个请求时到期。此属性可以是以下值之一。值 说明 True 指定启用滑动到期。身份验证 cookie 被刷新,并且到期时间在单个会话期间的后续请求中被重置。False 指定不启用滑动过期,并且 cookie 从最初发出 cookie 的时间开始按设定的时间间隔过期。默认值为真。

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

干杯。

4

2 回答 2

7

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

换句话说,如果自创建票证以来经过的时间大于票证超时的一半(在您的场景中为 1 分钟),则票证将不会被更新。否则,将授予新的票证并重新超时(在您的情况下为 2 分钟)。总而言之,如果您在 1 分钟后点击您的页面,无论您的 slipExpiration 设置如何,它都不会延长您的 Forms 会话生命周期。

这是有道理的,但我找不到任何官方来源。所以我会在有空的时候自己测试一下。

干杯。

于 2011-09-27T14:49:10.943 回答
0

新 Cookie 仅在 Cookie 创建时间已过一半且您的情况发生时才会发布。

于 2013-03-13T07:33:28.413 回答