Estamos integrando una instalación de Diaguita con el IDP de Arai Usuarios tal como se describe aca1, y nos pasa lo siguiente. En el paso de forzar uso de HTTPS, lo activamos y todos los archivos parecen configurarse bien, pero pasa lo siguiente:
Si dejamos la variables ‘proyecto_login’ vacía en ‘saml_onelogin.ini’ (tal como queda después de reconfigurar el sso) SAML redirige con HTTPS pero obviamente no funciona porque falta esa parte del Path.
Ahora, si le ponemos en esa variables el valor “diaguita”, arma bien el path pero sin la “s” de https.
Comparamos el resto de los archivos involucrados con instalaciones de Pilaga y Mapuche integradas al mismo IDP y funcionan ok.
Por ahora forzamos la redirección de http->https y “salvamos” la situación, pero queremos arreglar esto si se les ocurre que puede estar pasando.
La entrada ‘proyecto_login’ en ‘saml_onelogin.ini’ dentro de la sección [sp] debería ir para Diaguita, si no lo agregó es por un bug en el mecanismo de reconfiguración. También, debería agregarles una entrada “usa_proxy_vars = 1” (si Diaguita usa Toba >=3.2.10 y siu/instalador >=1.9).
En teoría con tener en instalacion/web_server.ini la entrada https = “on” estaría forzando a que la componente SP responda a la interacción con el IDP indicándole que es https.
Claro, Diaguita aun tiene ese bug, pero descubrimos ese comportamiento raro que te comenté en el post original.
Claro, eso esta bien seteado tal como dice la guia. Por eso este reporte, no anda como en teoria deberia hacerlo (que tenemos funcionando en Mapuche y Pilaga).
No, la conexion entre IDP, SP y Cliente es directa a nivel HTTP.
Usando un debugger de SAML (via addon de firefox) podiamos ver en el mensaje XML de SAML que el Issuer iba sin la “s” de https (el endpoint que termina con default-sp)
te hago una consulta puntual, fijate en el archivo instancia.ini si tiene seteado el parametro full_url para Diaguita y si esta colocado que vaya por https o comun.
No tenia la “s” en el instancia.ini. Probamos agregandosela y no tuvimos exito.
Como dato de “color”, en el pilaga que esta integrado al mismo IDP, y esta por HTTPS, ese valor full_url esta sin la “s”. Y anda.
Por ahi un dato que nos serviria para empezar a debugguear es: ¿Donde levanta Toba esas variables (la de los ini)? Se almacenan en la instancia? En cada request se levantan desde los .ini? Por momento nos da la sensación de que estan “cacheados”.
Esto es extraño, ya que dicho parametro es el que se utiliza para armar la info del SP que luego se entrega al IDP.
Como dato de "color", en el pilaga que esta integrado al mismo IDP, y esta por HTTPS, ese valor [b]full_url[/b] esta sin la "s". Y anda.
Lo que lo hace aun mas bizarro... fijate lo que te paso abajo.
Por ahi un dato que nos serviria para empezar a debugguear es: ¿Donde levanta Toba esas variables (la de los ini)? Se almacenan en la instancia? En cada request se levantan desde los .ini? Por momento nos da la sensación de que estan "cacheados".
Los valores de la instancia se levantan cuando se abre la sesion en PHP, asi que si… es probable que tengas que usar una pestaña privada para probar si metiste algun cambio.
Mas alla de eso, el metodo que arma las URLs para el SP… saca la primera parte de aca, como ves si existe el parametro full_url el resto se vuelve irrelevante.
Saludos
PD: Algo que me olvide, cuando navegues a ?metadata tal como te pidio Sergio… fijate si podes capturar el log de Toba, por si hay algo que se nos este escapando.