我已将 cookie 过期时间设置为 1 个月,但当我在浏览器中查看 .ASPXAUTH cookie 的过期超时时,它显示从现在开始提前 30 分钟。
var ticket = new FormsAuthenticationTicket(1, "myname", DateTime.Now,
DateTime.Now.AddMonths(1), true, "test");
string ticketString = FormsAuthentication.Encrypt(ticket);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, ticketString)
{
Expires = DateTime.Now.AddMonths(1),
Path = FormsAuthentication.FormsCookiePath
};
HttpContext.Current.Response.Cookies.Add(cookie);
你能告诉我为什么上面的代码会这样吗,我想更改过期时间,但它总是 30 分钟。
最佳答案
您需要以编程方式设置此超时时间还是可以在配置文件中设置它?有一个 timeout 参数,表示身份验证 cookie 超时:http://msdn.microsoft.com/en-us/library/1d3t3c61.aspx
此参数的默认值为 30 分钟。
最好的问候, 德米特里
关于c# - ASPX 身份验证 cookie 过期时间始终为 30 分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9889401/