Foros de consultas y discusión

RE: Mensaje: "Cannot navigate back to Service Provider" luego de log out

Walter Diaz, modificado hace 6 años.

Mensaje: "Cannot navigate back to Service Provider" luego de log out

Youngling Mensajes: 4 Fecha de incorporación: 26/04/18 Mensajes recientes
Hola,

Les hago una consulta por un problema que estamos teniendo con la configuración sso en mgap.

Tenemos un aplicación asp.net que basicamente es un sitio en donde estan registradas todas las aplicaciones dentro del ministerio que usan sso como metodo de validación.
Muy resumido, una aplicación cualquiera se registra en dicho sitio y antes de acceder a la misma se debera verificar la identidad de la persona contra el sitio de agesic.
Pero estamos teniendo un problema con el Logging Out.
Concretamente una vez deslogueado de agesic nos muestra el mensaje "Cannot navigate back to Service Provider." (adjunto archivo con captura de pantalla)

La ventana de network del explorador muestra lo siguiente:

Request URL: https://dgrn.mgap.gub.uy/PlanesDeUso/sso/sll?SAMLResponse=fZJfa4MwFMW%2FiuRdjWmsGqplrBQKHYz1z8NeRjRXJ2gi3jjWbz%2Fb1a2M0Yc8JPec3HN%2FyWL52TbOB%2FRYG52SwKPEAV0YVesqJYf92o3JMlugbBvWia2pzGBfADujEZzRqlF811Iy9FoYiTUKLVtAYQuxe3jaCuZR0fXGmsI0xFkB2lpLe2n3bm2HwvdV1WuvrWTnVUPuDSf%2FuZEacAUHND6eVzNaN6uUvLEo4CyYsTwso5gXZRwwXgZsXoZJKVkUjjI9BdyblNSqkHw2VyqkVJWcqnkskxISGF2Q54yPA28QB9hotFLblDAaxC7lLgv3jIowEgHzEs5fiXOcMI0jkSsUcTH3tyzuo5CI0J%2FHJ87a9K209%2BXnk1q55UUqQNvankg2gRtLXmd6K5uJXK26hX%2Bb7OfxdlbaAf9sH40C5yibAe7HwIta7IaiAETiZ9cmv9f6%2F%2F6R7As%3D&SigAlg=http%3A%2F%2Fwww.w3.org%2F2001%2F04%2Fxmldsig-more%23rsa-sha256&Signature=YrXUPF4ri6DfxRyT1A0qwu4V89xX7ob1rTleCU9Y1KTAD4q%2BsRPtYnJzaTTyxmlT2Fkm7os4SSFNi3wtFJRkr2DJHyxAnvgEMYlqF47pqLtaRbefzTikOQgVNpLipFR8p%2FYxDHXKhljSjAlw5iFPFEtlq6gNLpgodKHXZrg8pN%2Br9cX4chJrgv6F%2BQdlwhzacq%2FUEG2XWBEQ7WvUxy%2BV3CEMToCqxMHUPbh4BfK6dvFmbIKZpJ%2FpuY%2Fm5pqmWHMS1l2Z%2BxGb5lXdSKwwt47b3oSh2dqqbl7lsAOSGOc%2FGCGgBeacCWKOH%2BT4kZMOvl93j9A%2B91pxoP4%2BIOpCGg9Y9A%3D%3D
Request Method: GET
Status Code: 500 Internal Server Error
Remote Address: 200.40.133.162:443
Referrer Policy: no-referrer-when-downgrade
Cache-Control: private
Content-Length: 4012
Content-Type: text/html; charset=utf-8
Date: Wed, 25 Apr 2018 20:57:14 GMT
Server: Microsoft-IIS/8.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Cookie: ASP.NET_SessionId=oucpv1im5kgnsopejepxh5kf; .ASPXAUTH=DE014D30B0E8E8032DD5B06BCA7F242BE87706B8319BCEAE99A28801EC64AD1D0531D8414283A4724B843D4812351F9608D1D7EA337C7F12862F6BD4958DF332284D593E89AA66E59693BD4FEB2D35AB0F9E0AD8DD8B7F0775C542FFB7E64C69F22CC27C25E3D36A4F33C6AC257B12FAB47698327CF126C66EC067163C28995D935F70D3E6BB5FFCB7101E52B3063ED5
DNT: 1
Host: dgrn.mgap.gub.uy
Referer: https://eid.portal.gub.uy/v1.1/idp/profile/SAML2/Redirect/SLO?SAMLRequest=fVLBitswFLwX%2Bg9G99iSLNmySLwUQsGQtpCUHnpZZOkpa7Bl15KX7d9XdrPsUkquo3kzb0Zv%2F%2FAy9MkzzL4b3QGRFKOH%2BuOHvVdDP8nTeB2XcIZfC%2FiQRKbzcn05oGV2clS%2B89KpAbwMWl4%2BfTlJmmKpvIc5RD2U%2FHgVjjhKjlGlcypsyFMIk5dZBp1Jp3EOqk%2BvS5suv7NnkpKsM1M2zaPteshWZZqdwXQz6JBdTt9Q0hwPqDNasbwwhmNsLMOmEKqyUAGzBNqWsujZeL9A43xQLsQ1MBE7zHaUf6dY8lISklacVkzwnyg5g%2FLravfC9VslcokR0btGpvtTMUkY9dij2G2SbO3KbbO5fu3BXGeXDlc13WrYZ%2B9Zb2Nfo3hzTD6P86DCfdcV6czOblQZZuV8By6g%2BrFlqsW2Ym3JBCtJpbloC4vzytiWAGc3879eb%2BaTvIBfP7RxBl5qTEHnnGphqjYHyypRMkyZxpYJCgXFjEBBDGcgItVqwbWyoqCi1Llh5Obyj2g8vuw%2F11f%2FAQ%3D%3D&SigAlg=http%3A%2F%2Fwww.w3.org%2F2000%2F09%2Fxmldsig%23rsa-sha1&Signature=M8DhEHLGV3TvukC%2fTc%2fPlYZJT2I0IShg0MhQsyMnWEBRUGrmH52mENY4TYCAgZ%2bPgCtgVzK0fbBaPprX4mJ7vvQld4LDHswt%2b7GY%2bGrp9KZ8j5vlbfJ7jltK6qmbJjz%2fweROP05jyuQqQDnU92%2f3JxW%2fWK7gQR3WyoZvjU5fL24T5aMNlInab6mu06egcgZy2XI%2bx6U4tCu4Tycr%2fR%2bKfpOcVNw7TQTmYJpw%2bw02nFcOwfX5b%2bHHjIJfadapTK8v5hJ%2biJjelXou2CPKhLDeii0dOIJN3ayPszmWtCsbSv4cxF%2bh40mq%2fRxG%2bnFEka4FSIe2QnghvwNnTwrAJnubjg%3d%3d
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36
SAMLResponse: fZJfa4MwFMW/iuRdjWmsGqplrBQKHYz1z8NeRjRXJ2gi3jjWbz/b1a2M0Yc8JPec3HN/yWL52TbOB/RYG52SwKPEAV0YVesqJYf92o3JMlugbBvWia2pzGBfADujEZzRqlF811Iy9FoYiTUKLVtAYQuxe3jaCuZR0fXGmsI0xFkB2lpLe2n3bm2HwvdV1WuvrWTnVUPuDSf/uZEacAUHND6eVzNaN6uUvLEo4CyYsTwso5gXZRwwXgZsXoZJKVkUjjI9BdyblNSqkHw2VyqkVJWcqnkskxISGF2Q54yPA28QB9hotFLblDAaxC7lLgv3jIowEgHzEs5fiXOcMI0jkSsUcTH3tyzuo5CI0J/HJ87a9K209+Xnk1q55UUqQNvankg2gRtLXmd6K5uJXK26hX+b7OfxdlbaAf9sH40C5yibAe7HwIta7IaiAETiZ9cmv9f6//6R7As=
SigAlg: http://www.w3.org/2001/04/xmldsig-more#rsa-sha256
Signature: YrXUPF4ri6DfxRyT1A0qwu4V89xX7ob1rTleCU9Y1KTAD4q+sRPtYnJzaTTyxmlT2Fkm7os4SSFNi3wtFJRkr2DJHyxAnvgEMYlqF47pqLtaRbefzTikOQgVNpLipFR8p/YxDHXKhljSjAlw5iFPFEtlq6gNLpgodKHXZrg8pN+r9cX4chJrgv6F+Qdlwhzacq/UEG2XWBEQ7WvUxy+V3CEMToCqxMHUPbh4BfK6dvFmbIKZpJ/puY/m5pqmWHMS1l2Z+xGb5lXdSKwwt47b3oSh2dqqbl7lsAOSGOc/GCGgBeacCWKOH+T4kZMOvl93j9A+91pxoP4+IOpCGg9Y9A==


En el web.config esta configurado de la siguiente manera:

   <system.webServer>
    <validation validateIntegratedModeConfiguration="true"/>
    <handlers>
      <remove name="SAML2.Protocol.Saml20SignonHandler"/>
      <remove name="SAML2.Protocol.Saml20LogoutHandler"/>
      <remove name="SAML2.Protocol.Saml20MetadataHandler"/>
      <add name="SAML2.Protocol.Saml20SignonHandler" verb="*" path="acsl" type="SAML2.Protocol.Saml20SignonHandler, SAML2"/>
      <add name="SAML2.Protocol.Saml20LogoutHandler" verb="*" path="sll" type="SAML2.Protocol.Saml20LogoutHandler, SAML2"/>      
    </handlers>
    <modules>
      <remove name="ApplicationInsightsWebTracking"/>
      <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler"/>
    </modules>
  </system.webServer>
  <saml2>
    <allowedAudienceUris>

      <audience uri="https://dgrn.mgap.gub.uy"/>
    </allowedAudienceUris>
    <serviceProvider id="https://dgrn.mgap.gub.uy" server="https://dgrn.mgap.gub.uy">
      <signingCertificate storeName="My" storeLocation="LocalMachine" findValue="59c823648234994982b517cdf876987894d" x509FindType="FindBySubjectKeyIdentifier"/>
      <endpoints>
        <endpoint localPath="https://dgrn.mgap.gub.uy/planesdeuso/sso/acsl" type="SignOn" redirectUrl="~/"/>
        <endpoint localPath="https://dgrn.mgap.gub.uy/planesdeuso/sso/sll" type="Logout" redirectUrl="~/"/>        
      </endpoints>
      <nameIdFormats allowCreate="true">
        <add format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"/>
      </nameIdFormats>
    </serviceProvider>
    <identityProviders metadata="Metadata">
      <add id="https://eid.portal.gub.uy/idp" default="true" omitAssertionSignatureCheck="true">
        <endpoints>
          <endpoint type="Logout" url="https://eid.portal.gub.uy/v1.1/idp/profile/SAML2/Redirect/SLO" binding="Redirect"/>
        </endpoints>
      </add>
    </identityProviders>
    
    <metadata>
      <contacts>
        <contact type="Administrative" company="Direccion General de Recursos Naturales" givenName="Alejandro" surName="Ferreira" email="aferreira@mgap.gub.uy" phone="+598 2309 7025"/>
      </contacts>
    </metadata>
    <actions>
      <clear/>
      <action name="SetSamlPrincipal" type="SAML2.Actions.SamlPrincipalAction, SAML2"/>
      <action name="UIDParserAction" type="SSOPortal.UIDParserAction, SSOPortal"/>
      <action name="Redirect" type="SAML2.Actions.RedirectAction, SAML2"/>
    </actions>
    <logging loggingFactory="SSOPortal.EventLoggerFactory, SSOPortal"/>
  </saml2>


Otro detalle es que el handler UIDParserAction solo dispara el metodo SignOnAction nunca llama al metodo LogoutAction a pesar de que la configuración para SigOn y Logout es similar y ambos métodos estan implementados.

Bueno les hize una intro superficial como para comenzar la conversación les voy agregando detalles a medida que los vayan necesitando.

Desde ya, muchas gracias!
​​​​​​​
Saludos,
Walter

Archivos adjuntos:

thumbnail
Francisco Perdomo, modificado hace 6 años.

RE: Mensaje: "Cannot navigate back to Service Provider" luego de log out

Padawan Mensajes: 36 Fecha de incorporación: 27/03/17 Mensajes recientes
Hola Walter, eso lo hiciste en produccion, no?

Te animas a probar en test y avisarme cuando lo hiciste asi reviso los logs?

Saludos!
2.6.0.0
Walter Diaz, modificado hace 6 años.

RE: Mensaje: "Cannot navigate back to Service Provider" luego de log out

Youngling Mensajes: 4 Fecha de incorporación: 26/04/18 Mensajes recientes
Hola,
Gracias por responder.

Estuve intentando test pero no he podido, nuestra aplicacion no llega a redireccionar al sitio de agesic ( adjunto captura )
Yo lo que hice fue cambiar lo siguiente en el web.config

    <identityProviders metadata="Metadata">
      <add id="https://test-eid.portal.gub.uy/v1.1/sp-idp" default="true" omitAssertionSignatureCheck="true">
        <endpoints>
          <endpoint type="Logout" url="https://test-eid.portal.gub.uy/v1.1/idp/profile/SAML2/Redirect/SLO" binding="Redirect"/>
        </endpoints>
      </add>
    </identityProviders>

Luego en el archivo idp-metadata.xml tambien cambio la url principal por test-eid.portal.gub.uy, pero sin exito.

Saludos

Archivos adjuntos:

thumbnail
Nicolas Piquerez, modificado hace 6 años.

RE: Mensaje: "Cannot navigate back to Service Provider" luego de log out

Padawan Mensajes: 62 Fecha de incorporación: 3/10/16 Mensajes recientes
Hola Walter,
Por lo que puedo ver, estas solicitando el logout al IDP correctamente, pero cuando el IDP te da el resultado del logout el servidor de MGAP responde con un error 500. Por eso seguramente aparece el mensaje de que no se puede redirigir hacia el service provider.
Chequee la configuración en el servidor (Coesys) y es correcta.

Como te comento Francisco para poder investigar el problema necesitamos que lo hagas funcionar en test.

El error que te da al intentar utilizar testing parece ser de mapeo de objetos en tu aplicación, ademas estas utilizando los datos de la aplicación de ejemplo del sistema (sp-idp). Hay que dar un alta para tu aplicación de manera analoga a como esta en producción.

Mandanos el formulario encontrado en https://centroderecursos.agesic.gub.uy/web/seguridad/wiki/-/wiki/Main/Integraci%C3%B3n+con+servicio+de+autenticaci%C3%B3n junto con el certificado a utilizar (puede ser autofirmado) a soporte@agesic.gub.uy


Saludos
Walter Diaz, modificado hace 6 años.

RE: Mensaje: "Cannot navigate back to Service Provider" luego de log out

Youngling Mensajes: 4 Fecha de incorporación: 26/04/18 Mensajes recientes
Ok,

Le envié los datos solicitados a soporte@agesic.gub.uy

Saludos