由于业务逻辑复杂,我必须自己实现身份验证。我将身份验证存储在:
FormsAuthentication.SetAuthCookie(标识符,FALSE);
False表示我们不想拥有持久性cookie
我还要在会话中存储一些信息(用户必须输入一个用于登录的信息,指示他想要访问哪组数据)。
我通过模型绑定器存储这些数据。
大部分时间都很好。但是在不活动期后的某个时间,我们仍然会被记录,但我们没有任何数据在会话中。
我希望我的会话持续时间与登录会话相同,以避免这种“我已经登录但我在会话中丢失了一些数据”。
我不需要/想要持久连接。
我应该如何继续使用这个系统?
答案 0 :(得分:1)
我相信FormsAuthentication使用自己的超时。您可以相应地配置web.config:
<system.web>
<authentication mode="Forms">
<forms timeout="50"/>
</authentication>
<sessionState timeout="50" />
</system.web>
答案 1 :(得分:0)
实际上,IIS应用程序池中默认存在会话超时,因此,为了避免此问题:
对我来说,这个+ Yannis配置(为表单超时和会话状态超时设置相同的值)有效。