Answers:
他们是不同的东西。“表单身份验证超时”值设置将身份验证Cookie设置为有效的时间(以分钟为单位),这意味着在value
分钟数之后,该Cookie将过期并且用户将不再被身份验证-它们将被重定向到登录名页面自动。该slidingExpiration=true
值基本上是说,只要用户在超时值内发出请求,它们就会继续被认证(此处有更多详细信息)。如果您设置slidingExpiration=false
了身份验证cookie,将在value
分钟数,无论用户是否在超时值内发出请求。
该SessionState
超时值设置的时间会话状态提供者需要保持数据在内存中(无论是正在使用的后备存储,或SQL Server中,OutOfProc等)特定会话的数量。例如,如果您使用示例中的值将对象放入会话中,则此数据将在30分钟后删除。用户仍可以通过身份验证,但会话中的数据可能不再存在。该Session Timeout
值始终在每次请求后重置。
slideExpiration = true值基本上表示在每次发出请求后,都会重置计时器,并且只要用户在超时值内发出请求,他就将继续被认证。
这是不正确的。仅在超过超时时间的一半时,才会重置身份验证Cookie超时。
参见例如https://support.microsoft.com/de-ch/kb/910439/zh-cn或https://itworksonmymachine.wordpress.com/2008/07/17/forms-authentication-timeout-vs-session -超时/
据我了解,它们彼此独立。通过使会话超时小于或等于身份验证超时,可以确保身份验证超时后任何特定于用户的会话变量都不会保留(如果这是您的担忧,我认为这是正常的问题)题)。当然,您必须在注销后手动处理会话变量的处理。
这是一个体面的回答,可以回答您的问题或至少为您指明正确的方向:
对于任何遇到此问题的人,请参阅MS的本文档-它具有有关FormsAuthentication Timeout设置的非常好的详细信息。
该文档详细说明了bmode在“已接受的答案”中的注释-关于持久性Cookie(会话与过期)