Question

J'essaie d'utiliser forms.signout, mais parfois, il ne déconnecte pas l'utilisateur et il peut toujours ouvrir des portes via le site Web.

Comment puis-je résoudre ce problème? J'ai également configuré l'authentification par formulaires web.config, mais cela ne fonctionne toujours pas.

J'utilise FormsAuthentication pour authentifier un utilisateur en passant il se connecte.

Merci !!

Était-ce utile?

La solution

Je ne sais pas quelle est la cause mais quelques choses que vous pourriez envisager / essayer

  • peuvent-ils toujours consulter les pages générées par le serveur ou retournent-ils simplement aux versions mises en cache localement? Que se passe-t-il quand une publication contenant du code vérifie si elle est authentifiée, est-ce que cela fonctionne ou échoue? Je pense que la signification ultérieure signifie qu'ils sont déconnectés mais que vous affichez les versions en cache de la page connectée, auquel cas vous souhaitez indiquer au client de ne pas mettre en cache les pages à l'aide d'instances:

    Response.Cache.SetExpires (DateTime.UtcNow.AddMinutes (-1)); Response.Cache.SetCacheability (HttpCacheability.NoCache); Response.Cache.SetNoStore ();

  • Vous pouvez essayer de définir manuellement le cookie pour qu'il expire, mais il s'agit d'un hack

    FormsAuthentication.SignOut (); Context.Response.Cookies.Item (FormsAuthentication.FormsCookieName) .Expires = Date.Now; Response.Redirect ("~ / Somewhere.aspx");

Autres conseils

L'utilisateur a-t-il le domaine (ou un domaine parent) dans ses sites de confiance ou ses sites intranet? J'ai récemment rencontré des problèmes d'authentification d'un utilisateur, mais anonyme dans les cas où cela est vrai. Dans mon cas, il se pourrait également qu'un site parent ait été configuré pour permettre l'authentification intégrée à Windows. J'ai enlevé depuis que je l'ai enlevé, mais cela n'a pas semblé résoudre le problème. Je n'ai pas encore redémarré IIS pour voir si cela aurait un effet. J'ai eu recours à la fois pour vérifier que l'utilisateur est authentifié et non anonyme pour s'assurer que les parties appropriées de la vue sont rendues. C’est en réalité plus précis même si mon code de connexion devrait empêcher d’avoir une connexion anonyme.

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