即使应用了所有属性,ASP.NET经过身份验证的用户也经常注销

时间:2013-11-12 18:31:47

标签: asp.net forms-authentication

我已经实现了自定义asp.net身份验证并添加了所有必需的属性,即使用户经常注销。

我曾在共享的godaddy服务器上托管过这个网站。

这是我的代码:

var ticket = new FormsAuthenticationTicket(2, auth.Message.ToString(), DateTime.Now, DateTime.Now.AddDays(3), true,
                                           string.Empty, FormsAuthentication.FormsCookiePath);
        var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(ticket))
        {
            Domain = FormsAuthentication.CookieDomain,
            Expires = DateTime.Now.AddYears(50),
            HttpOnly = true,
            Secure = FormsAuthentication.RequireSSL,
            Path = FormsAuthentication.FormsCookiePath
        };
        Response.Cookies.Add(cookie);
        Response.Redirect(FormsAuthentication.GetRedirectUrl(auth.Message.ToString(), true));

我的Web.config有以下值:

<authentication mode="Forms">
  <forms requireSSL="false" timeout="120" loginUrl="~/CRM/Logon.aspx" defaultUrl="~/CRM/OTP.aspx" />
</authentication>

我的用户抱怨他们会在10-20分钟后退出

感谢任何帮助。

修改

我删除了requireSSL =“false”timeout =“120”,甚至没有效果。

我也没有使用会话

1 个答案:

答案 0 :(得分:0)

问题是我们还需要指定应用程序池空闲超时以使上述条件有效。