Travailler sur un projet où nous utilisons Windows Identity Foundation. Lors du test de la solution de déconnexion, j'ai trouvé que l'appel suivant http://rp/?wa=wsignoutcleanup1.0 ne supprime pas le cookie FedAuth sur le RP. Qui, à son tour, oblige l'utilisateur à rester connecté au RP.wa = wsignupcleanup1.0 ne se déconnecte pas utilisateur sur Relying Party
Pour remédier à la situation dans laquelle j'ajouté le code suivant à la Global.asax:
protected void Application_Start()
{
FederatedAuthentication.WSFederationAuthenticationModule.SigningOut += new EventHandler<SigningOutEventArgs>(WSFederationAuthenticationModule_SigningOut);
}
void WSFederationAuthenticationModule_SigningOut(object sender, SigningOutEventArgs e)
{
FederatedAuthentication.SessionAuthenticationModule.DeleteSessionTokenCookie();
}
mais ne devrait pas WIF prendre soin de cela automatiquement? Ou est-ce la façon de le faire?
Cela devrait fonctionner, particulièrement cela fonctionne pour notre projet. Vérifiez quelle est la réponse HTTP de votre RP avec Fiddler, FireBug ou un outil similaire. Et vérifiez également que vous avez correctement activé WIF httpModules dans web.config. –
J'ai utilisé le code mais j'ai eu une erreur comme 'Message d'erreur du compilateur: CS0246: Le type ou le nom d'espace de noms 'SigningOutEventArgs' est introuvable (manque-t-il une directive using ou une référence d'assembly?)' –