表单身份验证超时与sessionState超时

我有关于网站会话超时的代码。在web.config中,我遇到了这段代码。


 <authentication mode="Forms">

  <forms loginUrl="~/Auth/SignOn.aspx" timeout="40" slidingExpiration="true" />

</authentication>


<sessionState timeout="30" />

有谁知道一个先于另一个先例,以及它们是如何不同的。谢谢。


眼眸繁星
浏览 659回答 3
3回答

holdtom

他们是不同的东西。“表单身份验证超时”值设置身份验证cookie设置为有效的时间(以分钟为单位),这意味着,在value几分钟后,cookie将过期,用户将不再进行身份验证 - 它们将被重定向到登录页面自动 - 。该slidingExpiration=true值基本上表示在每次发出请求后,计时器都会重置,只要用户在超时值内发出请求,它们就会继续进行身份验证。如果设置slidingExpiration=false身份验证cookie,则value无论用户是否在超时值内发出请求,都将在数分钟后过期。该SessionState超时值设置的保存在内存中(或任何后备存储正在被使用,SQL服务器,OutOfProc等)特定会话数据会话状态提供者所需要的时间。例如,如果使用示例中的值将对象放入Session中,则此数据将在30分钟后删除。用户可能仍然经过身份验证,但会话中的数据可能不再存在。Session Timeout每次请求后,该值始终会重置。
打开App,查看更多内容
随时随地看视频慕课网APP