我想我了解 ASP.NET 的“会话”和“表单身份验证”之间的区别。会话基本上用于存储特定于该用户会话的信息(可能是搜索过滤器的状态),表单身份验证用于记住他们应该有权访问某些内容。
我的问题是,为什么希望表单身份验证超时时间长于会话超时时间?事实上,默认情况下,web.config 将表单身份验证的超时设置为更长。
这是我看到的两种情况:
- 会话在表单身份验证之前超时。用户丢失了搜索过滤器之类的东西,尽管他们仍然可以看到安全页面,但情况可能看起来有所不同,并且各种情况可能会重置。
null
此外,开发人员每次使用时都必须担心 Session 会变成它。 - 表单身份验证在会话之前超时。用户必须重新输入用户名和密码,但他们会返回到他们所在的页面并且会话信息完好无损(除非这也已超时)。开发人员只需要担心 Session
null
在一个地方 - 在登录时 - 并且可以在必要时在那里初始化它。
为什么情景 1) 会更受欢迎?我错过了什么吗?