FormsAuthentication.SlidingExpiration
这个属性是只读的,默认值是 true,在哪设置呢?
web.config
<configuration> <system.web> <authentication mode="Forms"> <forms name="itpow" slidingExpiration="false" /> </authentication> </system.web> </configuration>
这个属性是什么意思呢?
直白地说:就是是否登录续期。
这话得从头解释:
FormsAuthenticationTicket 有两个属性:
IssueDate:票据签发时间。
Expiration :票据过期时间(注意票据过期和 Cookie 过期是两码事)。
假如 IssueDate 是 2023-08-10 15:34:45
假如 Expiration 是 2023-08-10 15:36:45
当 SlidingExpiration 为 true(默认值),距离上次访问超过 2 分钟,票据就过期,并不是 2023-08-10 15:36:45 一到就过期,因为每次访问,它都会续期。
当 SlidingExpiration 为 false,一定是 2023-08-10 15:36:45 一到就过期。
有人说这个属性为 true,则会更改凭据的 Cookie 为持久性 Cookie,这显然是不正确的:Cookie 过期与否与凭据过期与否是两个概念。