Problemas al visualizar usuarios desde Diaguita (SOLUCIONADO)

Buenas tardes.
Me encuentro haciendo pruebas de integración de diaguita con IEE.
En este momento tengo tengo el login de diaguita integrado al portal de huarpes, pero tengo el siguiente problema.
Cuando quiero desde Diaguita ( administración → usuarios → ABM de usuarios → buco el usuario → click sobre la lupa ) visualizar o modificar algún atributo de un usuario de Diaguita me da el siguiente error.

Client\x20error\x3A\x20\x60GET\x20https\x3A\x2F\x2Fportaltest.unm.edu.ar\x2Fapi\x2Dusuarios\x2Fv1\x2Fusuarios\x2Faplicaciones\x2F_d309507078dd132e118a34017d4e9e32a5d145c7a1\x2Fcuentas\x2Fjetchevers\x60\x20resulted\x20in\x20a\x20\x60401\x20Unauthorized\x60\x20response\x3A\x0A\x7B\x0A\x20\x20\x20\x20\x22mensaje\x22\x3A\x20\x22autenticaci\x5Cufffdn\x20cancelada\x22\x0A\x7D\x0A\x0AGET\x20\x2Fapi\x2Dusuarios\x2Fv1\x2Fusuarios\x2Faplicaciones\x2F_d309507078dd132e118a34017d4e9e32a5d145c7a1\x2Fcuentas\x2Fjetchevers\x20HTTP\x2F1.1\x0D\x0AUser\x2DAgent\x3A\x20GuzzleHttp\x2F6.5.5\x20curl\x2F7.74.0\x20PHP\x2F7.4.30\x0D\x0AHost\x3A\x20portaltest.unm.edu.ar\x0D\x0A\x0D\x0A\x0AHTTP\x2F1.1\x20401\x20Unauthorized\x0D\x0AApi\x2DVersion\x3A\x201.0\x0D\x0AContent\x2DLength\x3A\x2049\x0D\x0AContent\x2DSecurity\x2DPolicy\x3A\x20upgrade\x2Dinsecure\x2Drequests\x0D\x0AContent\x2DType\x3A\x20application\x2Fjson\x0D\x0ADate\x3A\x20Mon,\x2024\x20Oct\x202022\x2018\x3A39\x3A41\x20GMT\x0D\x0AServer\x3A\x20Valis\x0D\x0AStrict\x2DTransport\x2DSecurity\x3A\x20max\x2Dage\x3D315360000\x3B\x20includeSubDomains\x0D\x0AWww\x2DAuthenticate\x3A\x20Basic\x20realm\x3D\x22Usuario\x20de\x20la\x20API\x22\x0D\x0AX\x2DFrame\x2DOptions\x3A\x20DENY\x0D\x0A\x0D\x0A\x7B\x0A\x20\x20\x20\x20\x22mensaje\x22\x3A\x20\x22autenticaci\x5Cufffdn\x20cancelada\x22\x0A\x7D\x0A

Verifico en “Administración → Configuración → interoperabilidad con sistemas externos → verificar configuración” tengo error en “rest-diaguita” y “conexión”
Adjunto captura de pantalla


error_diaguita.png

error_diaguita.png

Hola Juan Manuel,

Respecto al error en el ABM de usuarios, al parecer estas teniendo un error de autenticacion contra la API de Arai-Usuarios.
Tendrías que verificar que los parámetros de autenticacion sean correctos. Te dejo el enlace a la documentación correspondiente: https://expedientes.siu.edu.ar/docs/diaguita/#configurar-el-cliente-de-usuarios-en-siu-diaguita

En relación al error de la sección “rest_diaguita” en la captura de pantalla, tendrías que verificar que la URL del parámetro “rest_diaguita” en el archivo instalacion/arai_documentos.ini sea correcta ya que al parecer esta fallando el intento de conexión a la API de Diaguita.

Respecto al error en la sección “conexion” en la captura de pantalla, te pido que verifiques los logs de Arai-Documentos para tener mas información del error que esta ocurriendo.
Con esta información te pido que dejes un nuevo mensaje o un GDS así lo continuamos viendo.

Saludos.

Hola Pablo Gracias por la respuesta.
Te comento que realice las verificación, te paso lo que obtuve.

  1. Revise la configuración del archivo “diaguita/instalacion/i__produccion/p__toba_usuarios/rest/rest_arai_usuarios/cliente.ini”
    Y la url y los datos de usuario y password son correctos, para comprobarlo probe acceder a trabes del navegador (ej: https://portaltest.unm.edu.ar/api-usuarios/v1/usuarios/jetchevers ) obtengo los datos del usuario jetchevers.
    Se verifico la url desde diaguita con
    “curl https://portaltest.unm.edu.ar/api-usuarios/v1/info -u usuario:contraseña”

  2. Verifique la url de arai_documento.ini y la url de rest_diaguita parece estar bien, su valor es: https://srv-diaguita-des.unm.edu.ar/diaguita/rest/v1/notificaciones/documento , a diferencia de lo que dice en la documentación tiene agregado la versión de la api después del rest. Modifique el /etc/hosts para que srv-diguita-des-unm.edu.ar apuntara a la interface 127.0.0.1 y el error cambio de “conection refused” a “No se encuentra definido el parámetro solicitado,revise el log”

  3. Verifique el log de docs_api cuando corro “Verificar configuración” y me arroja lo siguiente.

docs_api.1.tc38i0uxtrw2@srv-docker | [Mon Oct 24 18:19:27.994316 2022] [php7:notice] [pid 32] [client 10.0.8.2:60262] [2022-10-24 18:19:27] REST-API.ERROR: Error al ejecutar el pedido. Ocurri\xc3\xb3 un error al obtener expedientes sudocu \n
docs_api.1.tc38i0uxtrw2@srv-docker | [Mon Oct 24 18:19:27.994490 2022] [php7:notice] [pid 32] [client 10.0.8.2:60262] [2022-10-24 18:19:27] REST-API.ERROR: #0 /usr/local/app/src/SIU/DocsApi/Controladores/TramitesController.php(49): SIU\DocsApi\Tramites\TramitesProviderSudocu->getExpedientes(‘mollerodiaz’, NULL)\n#1 /usr/local/app/src/SIU/DocsApi/Endpoints/Backend/tramites/tramites.php(91): SIU\DocsApi\Controladores\TramitesController->getTramites(‘mollerodiaz’, NULL)\n#2 [internal function]: tramites->get_list()\n#3 /usr/local/app/vendor/siu-toba/rest/src/SIUToba/rest/lib/rest_instanciador.php(38): call_user_func_array(Array, Array)\n#4 /usr/local/app/vendor/siu-toba/rest/src/SIUToba/rest/rest.php(254): SIUToba\rest\lib\rest_instanciador->ejecutar_accion()\n#5 /usr/local/app/www/api-backend.php(75): SIUToba\rest\rest->procesar()\n#6 {main} \n
docs_api.1.tc38i0uxtrw2@srv-docker | 10.0.8.2 - documentos [24/Oct/2022:18:19:27 -0300] “GET /docs/rest/backend/tramites?id_usuario=mollerodiaz HTTP/1.1” 500 168

Juan Manuel,

Si desde Diaguita intentas crear un nuevo usuario, y haces click en la el icono del lapiz para buscar la cuenta de arai podes buscar en el pop up los usuarios de arai sin inconvenientes?
Solamente tenes error al usar el botón de la lupa desde el listado de usuarios en Diaguita? Si fuera asi, habias agregado el ID de Diaguita en el parametro vincula_arai_appID en el archivo instalacion/instalacion.ini?

Podrías verificar que el archivo instalacion/i__produccion/p__diaguita/rest/servidor.ini tenga la configuración mínima requerida que es la que te dejo a continuación. Teniendo en cuenta que la ruta en las secciones path_api y path_api_pers sea la correcta al directorio del proyecto. El mecanismo de autenticación tendría que ser el que utilicen para la conexión a otros sistemas. A modo de ejemplo lo dejo con “digest”


autenticación = digest
[settings]
formato_respuesta = json
url_protegida = "/(?=^((?!convocatorias-publicas|notificaciones).)+$)/xs"
[v1]
path_api = "/usr/local/diaguita/php/rest/v1"
path_api_pers = "/usr/local/diaguita/personalizacion/php/rest/v1"

Podrías verificar ahora el log de la api de sudocu, ya que al parecer ahi se esta originando un error, posiblemente podria ser que no exista el usuario utilizado en Sudocu.

Saludos.

Hola Pablo, buen día.

Te paso lo que me pedis…

Cuando quiero crear un nuevo usuario desde diaguita, el campo “Usuario Arai” me aparece en gris y tampoco me deja rellenar el campo Usuario (que es un campo obligatorio).

Te dejo una captura de pantalla

En el archivo instalación/i__produccion/p_diaguita/rest/servidor.ini tengo lo siguiente:

 
#autenticacion = "digest,jwt"
autenticacion = "basic"

[settings]
formato_respuesta = "json"
url_protegida = "/(?=^((?!convocatorias-publicas|notificaciones).)+$)/xs"
encoding="utf-8"

#[jwt]
#tipo = "simetrico"
#algoritmo = "HS512"
#usuario_id = "lkopp"
#key_encoder = "lkopp"
#key_decoder = "lkopp"

[v1]
path_api = "/usr/local/siu/diaguita/php/rest/v1"
path_api_pers = "/usr/local/siu/diaguita/personalizacion/php/rest/v1"


La autenticación se cambio a basic porque no me funcionaba el bumdle de diaguita (GDS 60206) y por otro lado el path _api_pers apunta a un directorio que no existe, en la instalación que tenemos el path es válido hasta “usr/local/siu/diaguita/personalizacion/php” luego no existe ninguna carpeta “rest”

Cuando elimine todo las líneas comentadas del archivo la verificación a la rest_diaguita me dio bien

  1. Te paso lo log de sudocu-api-server y docs-api al momento de hacer la “verificación de configuración” por el ítem de conexión

sudocu-api-server


sudocu_api-server.1.7508lucvgov0@srv-docker    | GET /integracion/integracion/expedientes?id_usuario=mollerodiaz 404 10.275 ms - 174
sudocu_api-server.1.7508lucvgov0@srv-docker    | [2022-10-25T11:39:00] job_seguimientos_found  0

docs.api


docs_api.1.tc38i0uxtrw2@srv-docker    | [Tue Oct 25 11:38:42.409527 2022] [php7:notice] [pid 19684] [client 10.0.8.2:60374] [2022-10-25 11:38:42] REST-API.ERROR: Error al ejecutar el pedido. Ocurri\xc3\xb3 un error al obtener expedientes sudocu [] []\n
docs_api.1.tc38i0uxtrw2@srv-docker    | [Tue Oct 25 11:38:42.409821 2022] [php7:notice] [pid 19684] [client 10.0.8.2:60374] [2022-10-25 11:38:42] REST-API.ERROR: #0 /usr/local/app/src/SIU/DocsApi/Controladores/TramitesController.php(49): SIU\\DocsApi\\Tramites\\TramitesProviderSudocu->getExpedientes('mollerodiaz', NULL)\n#1 /usr/local/app/src/SIU/DocsApi/Endpoints/Backend/tramites/tramites.php(91): SIU\\DocsApi\\Controladores\\TramitesController->getTramites('mollerodiaz', NULL)\n#2 [internal function]: tramites->get_list()\n#3 /usr/local/app/vendor/siu-toba/rest/src/SIUToba/rest/lib/rest_instanciador.php(38): call_user_func_array(Array, Array)\n#4 /usr/local/app/vendor/siu-toba/rest/src/SIUToba/rest/rest.php(254): SIUToba\\rest\\lib\\rest_instanciador->ejecutar_accion()\n#5 /usr/local/app/www/api-backend.php(75): SIUToba\\rest\\rest->procesar()\n#6 {main} [] []\n
docs_api.1.tc38i0uxtrw2@srv-docker    | 10.0.8.2 - documentos [25/Oct/2022:11:38:42 -0300] "GET /docs/rest/backend/tramites?id_usuario=mollerodiaz HTTP/1.1" 500 168


Creacion_de_usuario_desde_Diaguita.png

Creacion_de_usuario_desde_Diaguita.png

Hola Juan Manuel,

Por lo que veo en la captura a tu perfil funcional le estaria faltando una operacion que permite visualizar los usuarios de Arai-Usuarios. Una vez que la agregues al perfil vas a visualizar otro icono al lado del campo “Usuario Arai” que te abrirá un pop para realizar la búsqueda de usuarios. Una vez seleccionado un usuario, el identificador se precarga en el campo usuario y se habilita para su edición.
Deberías modificar el perfil funcional y en la pestaña “Operaciones Accesibles” habilitar la opción “Selección de usuarios arai” que se encuentra en Administración -> Usuarios

Perfecto! La autenticacion puede quedar con el mecanismo que utlicen para conectarse desde otros sistemas a Diaguita, asi que si lo tienen con basic lo puede dejar asi.
Respecto al path_api_pers es correcto si no tienen la carpeta “rest” ya que significa que no tienen una personalización. Lo importante es que el resto de la ruta sea correcta y principalmente que la ruta de path_api sea correcto.

Como esa consulta a la API de sudocu esta dando un 404 estimo que el usuario mollerodiaz podria no existir en sudocu. Podrias verificar si existe alli?

Saludos

Hola Pablo, buen día.

Por lo que veo en la captura a tu perfil funcional le estaria faltando una operación que permite visualizar los usuarios de Arai-Usuarios. Una vez que la agregues al perfil vas a visualizar otro icono al lado del campo "Usuario Arai" que te abrirá un pop para realizar la búsqueda de usuarios. Una vez seleccionado un usuario, el identificador se precarga en el campo usuario y se habilita para su edición. Deberías modificar el perfil funcional y en la pestaña "Operaciones Accesibles" habilitar la opción "Selección de usuarios arai" que se encuentra en Administración -> Usuarios

Habilite en el perfil funcional la opción “Selección de usuarios arai” y me apareció el lápiz para consultar usuario Arai cuando voy a crear uno nuevo.
Cuando hago click en el lápiz me aparece una nueva ventana para hacer la búsqueda en arai, ahí trate de buscar por apellido pero cuando realiza la consulta me da un error que te copio a continuación


Client\x20error\x3A\x20\x60GET\x20https\x3A\x2F\x2Fportaltest.unm.edu.ar\x2Fapi\x2Dusuarios\x2Fv1\x2Fusuarios\x2Fusuarios\x3Fexcluir_aplicacion\x3D_d309507078dd132e118a34017d4e9e32a5d145c7a1\x26apellido\x3Dcontiene\x253Betchevers\x60\x20resulted\x20in\x20a\x20\x60404\x20Not\x20Found\x60\x20response\x3A\x0A\x7B\x0A\x20\x20\x20\x20\x22error\x22\x3A\x20404,\x0A\x20\x20\x20\x20\x22mensaje\x22\x3A\x20\x22404\x20Not\x20Found\x22,\x0A\x20\x20\x20\x20\x22descripcion\x22\x3A\x20\x22No\x20se\x20pudo\x20encontrar\x20el\x20recurso\x20en\x20el\x20servidor\x22\x0A\x20\x28truncated...\x29\x0A\x0AGET\x20\x2Fapi\x2Dusuarios\x2Fv1\x2Fusuarios\x2Fusuarios\x3Fexcluir_aplicacion\x3D_d309507078dd132e118a34017d4e9e32a5d145c7a1\x26apellido\x3Dcontiene\x253Betchevers\x20HTTP\x2F1.1\x0D\x0AUser\x2DAgent\x3A\x20GuzzleHttp\x2F6.5.5\x20curl\x2F7.74.0\x20PHP\x2F7.4.30\x0D\x0AAuthorization\x3A\x20Basic\x20ZGlhZ3VpdGE6RGlhZ3VpdGE2Nzg\x3D\x0D\x0AHost\x3A\x20portaltest.unm.edu.ar\x0D\x0A\x0D\x0A\x0AHTTP\x2F1.1\x20404\x20Not\x20Found\x0D\x0AApi\x2DVersion\x3A\x201.0\x0D\x0AContent\x2DLength\x3A\x20121\x0D\x0AContent\x2DSecurity\x2DPolicy\x3A\x20upgrade\x2Dinsecure\x2Drequests\x0D\x0AContent\x2DType\x3A\x20application\x2Fjson\x0D\x0ADate\x3A\x20Wed,\x2026\x20Oct\x202022\x2013\x3A48\x3A42\x20GMT\x0D\x0AServer\x3A\x20Valis\x0D\x0AStrict\x2DTransport\x2DSecurity\x3A\x20max\x2Dage\x3D315360000\x3B\x20includeSubDomains\x0D\x0AX\x2DFrame\x2DOptions\x3A\x20DENY\x0D\x0A\x0D\x0A\x7B\x0A\x20\x20\x20\x20\x22error\x22\x3A\x20404,\x0A\x20\x20\x20\x20\x22mensaje\x22\x3A\x20\x22404\x20Not\x20Found\x22,\x0A\x20\x20\x20\x20\x22descripcion\x22\x3A\x20\x22No\x20se\x20pudo\x20encontrar\x20el\x20recurso\x20en\x20el\x20servidor\x22\x0A\x7D\x0A

2 - Con respecto a

Como esa consulta a la API de sudocu esta dando un 404 estimo que el usuario mollerodiaz podria no existir en sudocu. Podrias verificar si existe allí?

Verifique que el usuario esta definido en Arai-usuario y también que tenga cuenta en sudocu, con ese usuario me logueo en huarpe y desde ahí puedo entrar al aplicativo sudocu, arai-usuario y diaguita.
Te adjunto dos imágenes de como esta definido en sudocu y las cuentas asociadas en arai-usuario.

Saludos…
Juan.


Usuario-en-arai.png

Usuario-en-arai.png

Usuario-sudocu.png

Usuario-sudocu.png

Hola Juan Manuel,

Por lo que veo la url a la que se esta consultando es /api-usuarios/v1/usuarios/usuarios. Estimo que es un error al definir la url de la api de usuarios ya que normalmente no deberia tener 2 veces usuarios/usuarios.
Podrías verificar el archivo instalacion/i__produccion/p__toba_usuarios/rest/rest_arai_usuarios/cliente.ini en Diaguita y eliminar el /usuarios que estaria duplicado. En primer lugar podrías verificar con un curl o mediante el browser que sin el /usuarios sea la url correcta.

Respecto al otro error, revisando nuevamente los logs que habias enviado.

Veo que Arai-Documentos esta realizando la consulta a /integracion/integracion/expedientes?id_usuario=mollerodiaz.
Al igual que en el caso anterior, se estaria incluyendo 2 veces el /integracion en la url del secret de conexion a sudocu de Arai-Documentos.

En este caso deberías chequear el secret docs_conexion_sudocu y modificar el valor de base_url.
Posiblemente tengas algo asi:


DOCS_CONEXION_SUDOCU=$(cat << EOF
"{base_uri:'http://api-server:8080/integracion',method:'basic',user:'user',password:'pass'}"
EOF
)
printf $DOCS_CONEXION_SUDOCU | docker secret create docs_conexion_sudocu -

en esta sección https://hub.siu.edu.ar/siu/expedientes/-/blob/master/prod/arai/secrets.sh.dist#L33

Deberías cambiar el base_url para que quede así: base_uri:‘http://api-server:8080/

Saludos

Hola Pablo, buenas tardes.

Te comento que realice las dos modificaciones que me sugerís en el post anterior y los problemas quedaron solucionados.

Muchas gracias por el soporte y el seguimiento…

Saludos
Juan .-

Buenísimo Juan Manuel,

Gracias por avisar.

Saludos