[SOLUCIONADO]Integrar aplicacion desarrollada en toba 3.0.2 al EEI

Hola! buen dia!
Hemos comenzado la migracion de nuestra instalacion de Arai + Huarpe a la solucion EEI.

En EEI pudimos incorporar huarpe y mapuche en modo test.

Tenemos una aplicacion hecha con toba 3.0.2 que estaba registrada y sincronizada contra arai usuarios que tambien queremos migrar al EEI.

La consulta es sobre los pasos a seguir.
Debemos desregistrar la aplicacion?
Y seguir pasos similares a los que se documentan aqui? https://expedientes.siu.edu.ar/docs/mapuche/

Desde ya muchas gracias!

Saludos!

Hola Javier,

Estan probando con la ultima version de EEI o alguna en particular?, la instalacion (entiendo manual) de Arai que tienen actualmente en que version esta?.. como para hacerme una idea de los pasos que les puede implicar.

Tenemos una aplicacion hecha con toba 3.0.2 que estaba registrada y sincronizada contra arai usuarios que tambien queremos migrar al EEI.

La consulta es sobre los pasos a seguir.
Debemos desregistrar la aplicacion?
Y seguir pasos similares a los que se documentan aqui? SIU-Mapuche · Solución de Expediente Electrónico Integrado


Normalmente como parte de la migracion hay un script que se encarga del registro de los SP si vienen de una version previa a 3.0 de Arai-Usuarios.

A mi me preocupa mas la version de Toba sobre la que esta hecha la aplicacion, se usaba una version de Onelogin distinta de la actual (2.x vs 3.x) por lo que quizas tengan que realizar algun ajuste o considerar migrarla de version de Toba… pero bueno, eso en el caso de problemas quizas.

Saludos

Hola Richard,
EEI es la ultima, y si sale una nueva va a ser esa tambien.

La instalacion Manual la tenemos asi:
Arai Usuario 3.0.5
Huarpe v2.2.7

Nuestra idea es: desconectar el aplicativo toba de arai 3.0.5
Y conectarlo al arai-usuarios del EEI.

Sera posible?

Muchas gracias!!

Hola Javier,

Faltó que nos comenten en que versión de Toba tienen su aplicación desarrollada.

Por otro lado, si quieren conectar su aplicación a EEI pueden seguir la guía de Mapuche que indicaron previamente. Entiendo que están armando un ambiente de TEST con lo cual no hay que migrar datos aún… si así fuera, quedan pendientes migrar los datos de la instalación “manual” a la “eei”

Como comentario, cuando tengan que migrar la instalación manual de arai-usuarios, deberán correr la migración de 3.0 a 3.1 de los datos (tanto LDAP como Postgres). Luego usar esas bases migradas como servicios para desplegar EEI. El detalle es que deberían respetar el APP_UNIQUE_ID que ya existe de su aplicación Toba y ponerla en el valor de instalación respectivo. Eso lo vemos después!

Saludos!

Hola Sergio, tenemos la version 3.0.30 de Toba!
Si, encontre en las tablas de Arai usuarios que ese identificador APP_UNIQUE_ID es clave.

Yo pensaba en dar de alta las aplicaciones en EEI, y cambiarles ese ID por el que tenemos en la instalacion manual!
Para conservar la relacion que tambien estan en la base ldap, no se si esta idea es descabellada.

Si en algun momento pueden podriamos hacer un meet corto y plantearles esto.

De momento probaremos en test asi.

Muchisimas gracias!

En el momento de migrar los usuarios que existen y ya acceden a su APP hecha en Toba, esos usuarios actualmente están vinculados (en LDAP) contra el ID de la APP que existe en su arai-usuarios 2.x.

Es decir, migrarán los usuarios, y las aplicaciones, ahi se mantendria el APP_UNIQUE_ID. Simplemente en la configuración de instalación de APP hecha en Toba tendrán que agregar en unos ini este valor de APP_UNIQUE_ID (posterior de actualizar a la versión 3.3 de Toba, no hay otra salida).

Saludos!

PD: manden mail y coordinamos el meet

Hola Sergio, estoy viendo este tema con Javier.
Tengo una version de toba 3.0.31.
La aplicacion ya fue dadade alta en EEI
Ahora queremos que el loguin de mi aplicacion redireccione al login de EEI.
Para esto, editamos instalacion.ini y agregamos:

autenticacion = "saml_onelogin"
vincula_arai_usuarios = "1"

En saml_onelogin.ini editamos:

[sp]
auth_source = "default-sp"
session.phpsession.cookiename = "TOBA_SESSID"
idp = "https://test-unir.unr.edu.ar/idp/saml2/idp/metadata.php"
proyecto_login = "weme"

[idp:https://test-unir.unr.edu.ar/idp/saml2/idp/metadata.php]
SingleSignOnService = "https://test-unir.unr.edu.ar/idp/saml2/idp/SSOService.php"
SingleLogoutService = "https://test-unir.unr.edu.ar/idp/saml2/idp/SingleLogoutService.php"
certFile = "c:\toba3\certs\idp\idp.crt"

Me estaria faltando alguna configuracion en toba?

Por otro lado en la operacion de loguin de la app teníamos esto:

if ( toba::instalacion()->get_tipo_autenticacion() != 'toba' ) {
			
			$ta = new toba_autenticacion();
						
			$atributos_usuario = $ta->get_atributos_usuario();  


No logramos que el login lo redireccione a Arai.
Esta aplicacion no fue nunca registrada, y no posee arai.lock
Sabes que nos estaria faltando??

Muchas gracias!

Hola Oscar,

Si estan en ese punto practicamente les conviene dar el paso a la rama 3.1 que tiene fixes y ademas actualizo la libreria de OneLogin hasta v2.16.x.

La aplicacion ya fue dadade alta en EEI Ahora queremos que el loguin de mi aplicacion redireccione al login de EEI. Para esto, editamos instalacion.ini y agregamos:
autenticacion = "saml_onelogin"
vincula_arai_usuarios = "1"

En saml_onelogin.ini editamos:

[sp]
auth_source = "default-sp"
session.phpsession.cookiename = "TOBA_SESSID"
idp = "https://test-unir.unr.edu.ar/idp/saml2/idp/metadata.php"
proyecto_login = "weme"

[idp:https://test-unir.unr.edu.ar/idp/saml2/idp/metadata.php]
SingleSignOnService = "https://test-unir.unr.edu.ar/idp/saml2/idp/SSOService.php"
SingleLogoutService = "https://test-unir.unr.edu.ar/idp/saml2/idp/SingleLogoutService.php"
certFile = "c:\toba3\certs\idp\idp.crt"

Me estaria faltando alguna configuracion en toba?


Algo que te estaria faltando es fijar el parametro full_url en instancia.ini si es que no lo tenes fijo para la aplicacion.

Por otro lado en la operacion de loguin de la app teníamos esto:
if ( toba::instalacion()->get_tipo_autenticacion() != 'toba' ) {
			
			$ta = new toba_autenticacion();
						
			$atributos_usuario = $ta->get_atributos_usuario();  


No logramos que el login lo redireccione a Arai.
Esta aplicacion no fue nunca registrada, y no posee arai.lock
Sabes que nos estaria faltando??

Asi en el aire me es muy complicado, sobre todo porque el item de login ha ido cambiando para incorporar nuevas funcionalidades. Si podes subirme el codigo del item este seria barbaro asi te puedo orientar mejor en donde se supone que deberia hacer el redirect.

Sino otra opcion… es hacer un backup de este item que tienen, actualizar el item de login y luego hacer un diff para ver que cambios introdujeron e intentar replicarlos sobre el login actualizado.

Si me suena raro que instancies una clase de autenticacion y le pidas los atributos asi de la nada, normalmente la instancia de autenticacion que se esta usando la contiene el manejador de sesiones… pero como te digo, si tienen codigo particular lo mejor seria ver en que contexto la estan usando para poder orientarlos mejor.

Saludos

Al tratar de actualizar la operación Login me da el siguiente error: ( al parecerer le falta el ‘schema’ a la tabla ya que existe en ‘desarrollo’)

C:\toba3\weme>toba proyecto actualizar_login
'direcotio toba ' +  C:\toba3\weme\vendor\siu-toba\framework
Va a sobrescribir el item de login, ¨desea continuar? (Si o No)
(s/n):s

 ERROR ejecutando SQL:
  [CODIGO]: 7
  [SQLSTATE]: db_42P01
  [MENSAJE]: ERROR:  no existe la relaci¢n ®apex_proyecto¯
 LINE 1: ... COALESCE('13',  pm_contexto) as pm_contexto FROM apex_proye...
                                                              ^
  [SQL EJECUTADA]: SELECT fuente_datos, COALESCE('13',  pm_contexto) as
 pm_contexto FROM apex_proyecto WHERE proyecto = 'weme'

Hola Oscar,

tenes la variable de entorno TOBA_PROYECTO seteada ya sea en el archivo .env o directamente en el entorno probablemente.

Necesito que la saques temporalmente de ahi y en una consola nueva (verifica que no este presente por favor) ejecutes el comando nuevamente pero pasandole el proyecto como modificador con -p .

Esto es porque la actualizacion del item del login se hace via clonado de un item de toba_editor… pero al estar presente la variable de entorno el framework solo ejecuta dicho proyecto (va con orejeras el pancho) y no puedo hacer el cambio de contexto que necesito para el clonado del item (por eso el error de bd… toma la bd incorrecta).

Al pasarlo solo como modificador, me deja inyectarle ese cambio via codigo y se realiza el clonado usando la instancia como bd de toba_editor.

Saludos

tenes la variable de entorno TOBA_PROYECTO seteada ya sea en el archivo .env o directamente en el entorno probablemente.
Gracias Richard, lo voy a probar.

Hicimos pruebas a pesar de no poder migrar la operación Login y logramos hacerlo funcionar!!!
Cambiamos en nuestro código, la recuperación de atributos de usuario:

$_SESSION['usuario'] = utf8_d_seguro($atributos_usuario['defaultUserAccount'][0]); //utf8_d_seguro($atributos_usuario['uniqueIdentifier'][0]);

y en saml_onelogin:

[basicos]
;atributo_usuario = uid
atributo_usuario = defaultUserAccount
permite_login_toba= 0

Hola Oscar,

Barbaro esto esta perfecto… me queda la intriga del motivo por el cual no los redirigia hacia el IDP… que era?.

Saludos

Hola Richard

Barbaro esto esta perfecto... me queda la intriga del motivo por el cual no los redirigia hacia el IDP... que era?.

Supongo que entre idas y venidas cambié al operación “Login” del proyecto que debe estar en “Autentificación de Usuarios” la original de TOBA.

Una vez verificadas las urls de IDP y hecho el cambio del parámetro de

atributo_usuario = defaultUserAccount
y reseteada la operación de Login, logramos el funcionamiento que teníamos con la versión anterior de ARAÍ.

Gracias y saludos!!!