Im desarrollando una pequeña aplicación web, utilizada en una computadora compartida.Cookie de autenticación de ASP.NET que no se elimina después de que se cierre Firefox
Cuando el usuario cierra la ventana del navegador, quiero que se eliminen la sesión y la autenticación.
En la página de conexión i usar algo como esto para autenticar al usuario:
FormsAuthenticationTicket authTicket =
new FormsAuthenticationTicket(1,txtUser.Text,
DateTime.Now,
DateTime.Now.AddMinutes(5),
false,"");
string encTicket = FormsAuthentication.Encrypt(authTicket);
HttpCookie faCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
HttpContext.Current.Response.Cookies.Add(faCookie);
string redirectUrl = FormsAuthentication.GetRedirectUrl(txtUser.Text, false);
HttpContext.Current.Response.Redirect(redirectUrl);
Como se puede ver, yo he dado la "isPersistent" variable para falso.
Esto parece funcionar en Chrome (no lo he probado en IE), sin embargo, cuando ejecuto la aplicación en Firefox, con varias pestañas activadas, si cierro el navegador y vuelvo a abrir, todavía estoy autenticado, y la cookie ¡todavía está ahí!
Es realmente extraño, porque la cookie debe eliminarse al cerrarse ... ¿Es esto un error de Firefox, cuando tienes múltiples pestañas abiertas? ¿Cómo puedo arreglar esto?
Ayuda es muy apreciada!
Gracias de antemano
¿Y dónde pongo ese código? Porque quiero eliminarlo cuando el usuario cierra la ventana, y no encuentro ningún controlador para esto. –
@Tom S.: Según su pregunta, he cambiado mi respuesta. Espero eso ayude. – Tarik
¿No eliminaría esto también la cookie de sesión cada vez que haga clic en un enlace para ir a otra página dentro del portal también? ¿Esencialmente los obliga a iniciar sesión una y otra vez para cada página? Tom solo quiere que esto suceda si cierran el navegador, lo que no creo que se pueda detectar. – EdenMachine