Question

J'utilise ce code dans la page de connexion. C'est bon travail.

FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
               1, // Ticket version
               eUserName.Text,
               DateTime.Now, 
               DateTime.Now.AddMinutes(30),
               true,
               "administrator",
               FormsAuthentication.FormsCookiePath);


        string hash = FormsAuthentication.Encrypt(ticket);
        HttpCookie cookie = new HttpCookie(
           FormsAuthentication.FormsCookieName,
           hash);

        // Set the cookie's expiration time to the tickets expiration time
        if (ticket.IsPersistent) cookie.Expires = ticket.Expiration;

        // Add the cookie to the list for outgoing response
        Response.Cookies.Add(cookie);
        Response.Redirect("Default.aspx");

Mais lorsque je me déconnecte en utilisant FormsAuthentication.SignOut ou asp: le contrôle LoginStatus n’est pas déconnecté. cela semble connecté. Lorsque je teste Internet Explorer 8, je me déconnecte avec succès.

Qu'est-ce qui se passe sur le firefox? Comment puis-je résoudre ce problème?

Merci

ebattulga

Était-ce utile?

La solution

Le problème avec FireFox et FormsAuthentication est que FireFox ne semble pas supprimer le cookie d'authentification sur SignOut. 3 choses à essayer:

1) Après avoir appelé la méthode SignOut, effacez les cookies comme ceci = > Response.cookies.clear ()
2) Essayez d’appeler Session.abandon avant votre appel SignOut
3) Vous pouvez également essayer les solutions suivantes: Response.Expires = 0, Response.Cache.SetNoStore (), Response.AppendHeader ("Pragma", "no-cache")

J'espère que ceux-ci vous aideront!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top