Я настраиваю файл cookie для проверки подлинности в C# как постоянный и с датой окончания года, но истекает слишком долго после его установки. Код ниже ...C# .net - проверка подлинности, истекающая досрочно
DateTime endDate = new DateTime();
endDate = DateTime.Now.AddYears(1);
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
username,
DateTime.Now,
endDate,
true,
userId.ToString(),
FormsAuthentication.FormsCookiePath);
string encryptedTicket = FormsAuthentication.Encrypt(ticket);
HttpCookie authCookie = new HttpCookie(
FormsAuthentication.FormsCookieName,
encryptedTicket);
authCookie.Expires = endDate;
Response.Cookies.Add(authCookie);
Любые идеи?
Когда вы говорите «не слишком долго», как долго вы это понимаете? Используете ли вы такой инструмент, как HttpWatch, чтобы выяснить, не отправляется ли файл cookie, или что формальная аутентификация больше не распознает его? Аутентификация форм –
не распознает человека, зарегистрированного после примерно 30 минут. Я не пробовал использовать HttpWatch, но я использовал cookie просмотра в Firefox, чтобы убедиться, что файлы cookie существуют и установлены на правильную дату истечения срока действия. Я видел два файла cookie, один из которых был .ASPXAUTH с правильной датой истечения срока действия и еще один ASP.NET_SessionId с «Session» в качестве даты истечения срока действия. – Tija