Je configure le cookie d'authentification dans C# comme persistant et avec une date de fin d'ici un an, mais il expire pas trop longtemps après avoir été défini. Le code est ci-dessous ...C# .net - l'authentification expire prématurément
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);
Des idées?
Quand vous dites "pas trop long", combien de temps voulez-vous dire? Avez-vous utilisé un outil comme HttpWatch pour déterminer si le cookie n'est plus envoyé ou si l'authentification par formulaire ne le reconnaît plus? L'authentification par formulaires –
ne reconnaît pas la personne comme étant connectée après environ 30 minutes. Je n'ai pas essayé d'utiliser HttpWatch, mais j'ai utilisé une vue que les cookies ajoutent dans firefox pour m'assurer que les cookies existaient et qu'ils avaient la bonne date d'expiration. J'ai vu deux cookies présents, l'un étant .ASPXAUTH avec la date d'expiration correcte, et un autre ASP.NET_SessionId avec "Session" comme date d'expiration. – Tija