MSIS7055: Not all SAML session participants logged out properly

Estuve trabajando con algunas aplicaciones SharePoint 2010, todas hosteadas en un mismo farm, pero en diferentes web applications.

Ambas aplicaciones están configuradas para usar ADFS como trusted issuer. Hay dos ADFS atendiendo los requests, y un proxy delante de ellos.

Cuando me autentico en una aplicación y luego, en otra instancia del navegador, abro otra aplicación, gracias al Single Sign-On en la segunda aplicación  no me pide credenciales.

Ahora cuando cierro una de las aplicaciones, mientras la otra está abierta en otro navegador, haciendo click en logout,  ADFS me muestra el siguiente error.

ADFS Error

Mirando el event viewer del proxy de ADFS, descubrí que la exception que generaba era:

Encountered error during federation passive sign-out. 
MSIS7055: Not all SAML session participants logged out properly

Si bien ADFS intenta deslogearse y borrar todas las cookies, no puede, porque hay otro navegador que esta usando la cookie.

Para arreglar este problema simplemente tenemos que ir a la carpeta de IIS de ADFS (En general se encuentra en C:\inetpub\wwwroot\adfs\ls) y editar el archivo error.aspx.cs. Al final de la función Page_Load agregamos la siguiente linea:

if (Exception.Message == "MSIS7055: Not all SAML session participants logged out properly. It is recommended to close your browser.")
{
Response.Redirect(System.Web.Configuration.WebConfigurationManager.AppSettings["signoutredirect"]);
}

view raw
SingleLogout-ADFS2.0
hosted with ❤ by GitHub

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *