我有一个使用表单身份验证的ASP.NET MVC应用程序。这是我创建身份验证令牌的代码行:
FormsAuthentication.SetAuthCookie(username, true);
我的web.config包含:
<system.web>
<machineKey validationKey="{unique key}" decryptionKey="{unique key}" validation="SHA1" decryption="AES" />
<authentication mode="Forms">
<forms loginUrl="~/account/" timeout="2880" />
</authentication>
...
</system.web>
<location path="my">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
尽管持久性cookie的参数设置为true,但我的用户在几天不活动后会被注销。
该应用程序已部署到AppHarbor,但在托管在专用服务器上时遇到了相同的行为。
我错过了什么会导致用户偶尔退出?
答案 0 :(得分:3)
您的超时时间设置为2880分钟,即48小时?
超时用于指定表单身份验证会话的有限生命周期。默认值为30分钟。如果发出持久性表单身份验证cookie,则timeout属性也用于设置持久性cookie的生存期。