[SOLVED] No es posible la integración con Guaraní Autogestión

Hola, buenas tardes. Saludos de UNPAZ.

Estamos con la integración del sistema Guaraní al SEEI con ayuda de la documentación oficial https://expedientes.siu.edu.ar/docs/guarani/

En nuestra universidad los sistemas Guaraní Gestión y Guaraní Autogestión funcionan y están almacenados en servidores distintos. Dentro del servidor de Guaraní Gestión en el directorio /3w no realizamos ninguna configuración, ya que no se utiliza desde allí.

Siguiendo la documentación ya hemos podido integrar Guaraní Gestión al ecosistema, pero no hemos podido integrar Guaraní Autogestión. Ni siquiera nos redirige a la pantalla del IDP.

Luego de analizar varias veces la documentación, nos surge la siguiente pregunta: ¿La documentación está basada en un sistema Guaraní en donde sólo se utiliza un único servidor, tanto para Gestión y Autogestión? ¿Será qué por esto no logramos la integración de ambos sistemas?

Desde ya, muchas gracias.

Hola Emiliano,

Luego de analizar varias veces la documentación, nos surge la siguiente pregunta: ¿La documentación está basada en un sistema Guaraní en donde sólo se utiliza un único servidor, tanto para Gestión y Autogestión? ¿Será qué por esto no logramos la integración de ambos sistemas?

No hace falta, Gestión y Autogestión pueden estar en servidores separados. Lo importante es que registres bien la aplicación con todas sus URLs, ver aquí.

Siguiendo la documentación ya hemos podido integrar Guaraní Gestión al ecosistema, pero no hemos podido integrar Guaraní Autogestión. Ni siquiera nos redirige a la pantalla del IDP.

¿te muestra algún error en los logs de Autogestión?

Revisa la Configurar parámetros SAML en SIU-Guaraní Autogestión.

¿generaste bien el certFingerprint desde el instalacion/idp.crt de Gestión?

¿tenes bien configurado el archivo instalacion/login.php de Autogestión?

saludos.
2

Buenas tardes, gracias por la respuesta.

Siguiendo las recomendaciones, generamos bien el certFingerprint. Hicimos una prueba con un usuario con permisos de Docente y al ingresar a Autogestión desde Huarpe nos redirige a la pantalla de logueo en donde en la interfaz del navegador nos devuelve el siguiente mensaje: “La cuenta no se encuentra asociada a ningún usuario”

Otra cosa que hemos notado es que la URL la cual nos logra redirigir al IDP es la siguiente: guarani3w.universidad.edu.ar/autogestion/acceso?auth=saml
Y no así si se ingresa solo guarani3w.universidad.edu.ar/autogestion/ la cual nos lleva directamente a la pantalla de logueo de Autogestión. ¿Esto debería funcionar de esta manera?

Sumo un log que quizás sea de este inconveniente: PHP Notice: Undefined index: usuario_arai in /usr/local/proyectos/3w/src/siu/modelo/entidades/persona.php on line 147, referer: https://guarani3w.universidad/autogestion/acceso?auth=saml

Quedo atento, saludos.

Hola Emiliano,

Siguiendo las recomendaciones, generamos bien el certFingerprint. Hicimos una prueba con un usuario con permisos de Docente y al ingresar a Autogestión desde Huarpe nos redirige a la pantalla de logueo en donde en la interfaz del navegador nos devuelve el siguiente mensaje: "La cuenta no se encuentra asociada a ningún usuario"

¿el usuario tiene la aplicación de SIU-Guaraní Autogestión en la solapa Cuentas? ¿el valor del campo Cuenta coincide con el usuario de Guaraní (mdp_personas.usuario)?

Otra cosa que hemos notado es que la URL la cual nos logra redirigir al IDP es la siguiente: guarani3w.universidad.edu.ar/autogestion/acceso?auth=saml Y no así si se ingresa solo guarani3w.universidad.edu.ar/autogestion/ la cual nos lleva directamente a la pantalla de logueo de Autogestión. ¿Esto debería funcionar de esta manera?
Revisa dar de alta la aplicación como dice acá: https://expedientes.siu.edu.ar/docs/guarani/#registrar-siu-guaran%C3%AD-autogesti%C3%B3n
Sumo un log que quizás sea de este inconveniente: PHP Notice: Undefined index: usuario_arai in /usr/local/proyectos/3w/src/siu/modelo/entidades/persona.php on line 147, referer: https://guarani3w.universidad/autogestion/acceso?auth=saml

En SIU-Guaraní Gestión operación Administrar Personas solapa Acceso al sistema vincula con el usuario de SIU-Araí.

saludos.
2

Hola, voy a sumar algunas capturas de como implementamos la configuración.

El usuario en cuestión tiene la aplicación en la solapa cuenta de Araí. Imagen (usuario-aplicaciones.png)

Luego el valor de campo cuenta coincide con el guaraní. Imagen de la base (base_guarani.png)

En Acceso al sistema lo vinculamos con el usuario de SIU-Araí, pusimos el UID de Araí en el campo “Usuario Araí” de Guaraní y guardamos. Desde ese momento en el campo nos apareció el nombre del usuario (coincide con el de Araí como se ve en la imagen guarani_acceso_sistema.png). También hemos probado con destildar la opción de “Usuario Administrador de Autogestión”


base_guarani.png

base_guarani.png

usuario-aplicaciones.png

usuario-aplicaciones.png

guarani_acceso_sistema.png

guarani_acceso_sistema.png

Adjunto también configuración de la aplicación (Imagenes aplicacion.png y aplicacion2.png) y configuración del usuario en cuestión en IDM (Imagen idm.png).

Es decir, si bien las configuraciones que me mencionaste aparentemente son correctas sigue apareciendo el error: “La cuenta no se encuentra asociada a ningún usuario”

Desde ya, muchas gracias. Saludos.


aplicacion.png

aplicacion.png

aplicacion2.png

aplicacion2.png

idm.png

idm.png

Hola Emiliano,

Gracias por las capturas, tenes todo bien configurado parece!!!

Yo probé creando el usuario alan.genoves y me funciona bien (el punto no genera problemas que era algo que sospechaba).

¿que error te muestra ahora en los los logs cuando intentas iniciar sesión?

¿Podrías probar en una ventana privada/incógnito?, ¿no tendrás ya una sesión iniciada en el navegador?

Revisa bien estos pasos: https://expedientes.siu.edu.ar/docs/guarani/#configurar-parámetros-saml-en-siu-guaraní-autogestión

¿https://sudocuprueba3w.unpaz.edu.ar/autogestion/acceso esta dentro de una VPN, no? Desde mi PC no puedo acceder.

Te voy a pedir que me adjuntes el log de Autogestión al momento del login, vas a ver que dice algo asi:


--  Configuracion SAML (settings.php)  -----------------------------------------


--  Configuracion SAML (login.php)  --------------------------------------------

Array
(
    [settings_file] => /usr/local/app/instalacion/saml/settings.php
    [saml_uid] => userAccounts
    [local_uid] => usuario
)

saludos.
4

Buenas tardes, las pruebas las hacemos desde una ventana incógnita para realizar siempre el proceso de logueo.

Los parámetros SAML en el settings.php los tenemos de esta manera (saml1.png y saml2.png)

Utilizamos VPN para trabajar por eso no vas a poder acceder.

Te sumo el único log que aparece cuando trato de acceder a autogestión desde Huarpe. Lo conseguí en /usr/local/proyectos/3w/instalacion/log/des01 ¿hay otra ruta para ver los logs de sesión?

clase: siu\errores\error_guarani_login
mensaje: login.errores.cuenta_externa_invalida
traza: [TRAZA]

—[ 0 ]-----------------------------------------

  • function: siu\modelo\autenticacion\fuente_usuarios_guarani->autenticar_login_saml
  • file: /usr/local/proyectos/3w/src/siu/modelo/autenticacion/fuente_usuarios_guarani.php, linea 81
  • param: ****

—[ 1 ]-----------------------------------------

  • function: siu\modelo\autenticacion\auth_saml->autenticar
  • file: /usr/local/proyectos/3w/vendor/siu/chulupi-framework/src/SIU/Chulupi/acceso/LoginManager.php, linea 48

—[ 2 ]-----------------------------------------

  • function: SIU\Chulupi\acceso\LoginManager->autenticar
  • file: /usr/local/proyectos/3w/vendor/siu/chulupi-framework/src/SIU/Chulupi/nucleo/AccesoWeb.php, linea 99

—[ 3 ]-----------------------------------------

  • function: SIU\Chulupi\nucleo\AccesoWeb::procesar_request
  • file: /usr/local/proyectos/3w/vendor/siu/chulupi-framework/src/SIU/Chulupi/nucleo/AccesoWeb.php, linea 25

—[ 4 ]-----------------------------------------

  • function: SIU\Chulupi\nucleo\AccesoWeb::procesar
  • file: /usr/local/proyectos/3w/src/siu/www/index.php, linea 15

Muchas gracias.


saml1.png

saml1.png

saml2.png

saml2.png

Hola Emiliano,

Esta fallando en la función autenticar_login_saml de src/siu/modelo/autenticacion/fuente_usuarios_guarani.php, la query no esta recuperando la persona parece.

Te vos a pedir que busques en los logs de Guaraní lo siguiente:


--  CATALOGO: persona/saml_buscar_por_usuario | cache [false] - tipo [no]  -----

Debería ejecutar la siguiente query:


SELECT	clave, persona
                        FROM	mdp_personas 
                        WHERE	usuario	= 'alan.genoves' 

¿si la ejecutas manualmente te devuelve resultados?

Te sumo el único log que aparece cuando trato de acceder a autogestión desde Huarpe. Lo conseguí en /usr/local/proyectos/3w/instalacion/log/des01 ¿hay otra ruta para ver los logs de sesión?

Si, los logs están ahí, revisa en instalacion/config.php de tener los logs en nivel debug para que muestre mas información.

saludos.
2

Encontramos la función autenticar_login_saml, está configurada de la siguiente manera:

function autenticar_login_saml($attributes, $uid_local, $uid_saml)
{
$funcion = ‘saml_buscar_por_’.$uid_local;
$parametros = array($uid_local => $attributes[$uid_saml][0]);
$persona = catalogo::consultar(‘persona’, $funcion, $parametros);
if(empty($persona)){
throw new error_guarani_login(‘-7’);
}
kernel::sesion()->set(‘login_por’, ‘saml’);
return $this->validar_persona_logueada($persona[‘persona’]);
}

Revisamos los logs de Guaraní, la query que debería ejecutarse no lo hace de la manera que mencionás, lo hace de esta forma:

– SQL -----------------------------------------------------------------------

SELECT clave, persona
FROM mdp_personas
WHERE usuario = ‘95081f73-6f40-45c8-8a91-1bb8804946d6’


Estando en el campo “usuario” el “uid” del IDM (en la base de Guaraní se corresponde con el campo “uid_arai”)

Es decir, de la manera en que nos pasás la query manualmente devuelve el dato, pero en los logs se ve que no la realiza de igual manera .

Saludos.

Hola Emiliano,

Tenes mal el archivo instalacion/login.php, seguramente tenes así:


	/**
	 *  Utiliza un sp de onelogin php para conectarse a un idp externo (no provisto por SIU).
	 *  Para el mapeo de usuarios Se ofrece por defecto buscar id_persona, o nombre de usuario,
	 *  en base al primer componente del atributo 'saml_uid' ($atributos[$saml_uid][0]).
	 *  Es probable que en función de la configuración del idp se deba personalizar la opearcion.
	 */
	'saml'   => array(
		'activo'     => true,
		'clase'      => 'modelo\\autenticacion\\auth_saml',
		'parametros' => array(
			'settings_file' => \siu\bootstrap::get_dir_instalacion() . '/saml/settings.php',
			'saml_uid' => 'uid',
			'local_uid' => 'usuario',
		),
	),

Debes tener ‘saml_uid’ => ‘userAccounts’, en lugar de ‘saml_uid’ => ‘uid’,.

Por eso te decía que revises esto: https://expedientes.siu.edu.ar/docs/guarani/#configurar-parámetros-saml-en-siu-guaraní-autogestión

saludos.
2

Hola, buen día.

Perfecto, nos faltaba una segunda línea con la configuración que mencionaste.

Ya pudimos integrar autogestión.

Muchas gracias por toda la ayuda, saludos.