Diferencia entre revisiones de «SIU-Kolla/Version 4.3.0/interfaces»

De SIU
Saltar a: navegación, buscar
m
m (Editar archivo de configuración para Araí)
 
(No se muestran 50 ediciones intermedias de 2 usuarios)
Línea 4: Línea 4:
 
== Introducción ==
 
== Introducción ==
  
Para lograr una comunicación con otros módulos, SIU-Kolla ofrece diferentes servicios web a través de su API para la manipulación de entidades básicas. En algunos casos, lo servicios solo involucran la recuperación de datos, y otros ofrecen un CRUD (Create-Retrieve-Update-Delete).
+
Para lograr una comunicación con otros módulos SIU-Kolla ofrece diferentes servicios web a través de su API para la manipulación de entidades básicas. En algunos casos, lo servicios sólo involucran la recuperación de datos y, en otros, ofrecen un CRUD (Create-Retrieve-Update-Delete).
  
 
== Configuración para SIU-Guaraní y otros ==
 
== Configuración para SIU-Guaraní y otros ==
  
Para poder utilizar los Servicios Web, se debe dar de alta el usuarios como Sistema Externo, y posteriormente, configurar dicho usuario en la configuración REST del proyecto:
+
Para poder utilizar los Servicios Web se debe dar de alta el usuarios como Sistema Externo y, posteriormente, configurar dicho usuario en la configuración REST del proyecto:
  
 
=== Creación de usuario como Sistema Externo ===
 
=== Creación de usuario como Sistema Externo ===
  
La siguientes operaciones deben ser realizadas por un usuario con los permisos suficientes.
+
''Para registrar un Sistema Externo visite la siguiente [[SIU-Kolla/Version 4.3.0/Documentacion de las operaciones/menu usuarios sistemas externos|página]].''
 
 
''Para registrar un Sistema Externo visite la siguiente [[SIU-Kolla/Version 4.3.0/Documentacion de las operaciones/menu usuarios sistemas externos|página]]''
 
 
=== Creación de usuario REST ===
 
=== Creación de usuario REST ===
 
* Editar el archivo <tt><path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/servidor.ini</tt>
 
* Editar el archivo <tt><path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/servidor.ini</tt>
Línea 21: Línea 19:
 
autenticacion = basic  
 
autenticacion = basic  
 
</source>
 
</source>
* y <tt><path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/servidor_usuarios.ini</tt>
+
 
<source lang="php" enclose="div">
+
y <tt><path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/servidor_usuarios.ini</tt><source lang="php" enclose="div">
 
;servidor_usuarios.ini
 
;servidor_usuarios.ini
 
[<nombre de usuario>]
 
[<nombre de usuario>]
Línea 31: Línea 29:
 
** <instancia>: por el nombre de la instancia
 
** <instancia>: por el nombre de la instancia
  
Para más información, consultar en la explicación de [https://toba.siu.edu.ar/trac/toba/wiki/Referencia/Rest REST de Toba]
+
Para más información, consultar la explicación de [https://toba.siu.edu.ar/trac/toba/wiki/Referencia/Rest REST de Toba].
 +
 
 +
== Configuración para SIU-Araí  ==
 +
A continuación se detallan los puntos a tener en cuenta para configurar la conexión de SIU-Kolla con SIU-Araí.
 +
 
 +
Una vez completados estos puntos se deberá proceder a realizar la configuración restante desde SIU-Araí (ver [[SIU-Arai/Modulos|'''documentación''']]).
 +
 
 +
=== Crear datos de usuario rest para Araí Usuarios ===
 +
Editar el archivo <tt><path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/rest_arai_usuarios/cliente.ini</tt>
 +
 
 +
<source lang="php" enclose="div">
 +
[conexion]
 +
auth_usuario = nombre_usuario
 +
auth_password = password_usuario
 +
</source>
 +
 
 +
=== Editar archivo de instancia ===
 +
Asegurarse que en el archivo '''instancia.ini''' este incorporado la variable '''full_url''' con la dirección completa de Kolla.
 +
 
 +
<source lang="php" enclose="div">
 +
[kolla]
 +
full_url = "http://direccion_completa_a_kolla"
 +
</source>
 +
 
 +
=== Editar archivo de proyecto ===
 +
Asegurarse que en el archivo '''proyecto.ini''' este incorporado la variable '''app_launcher''' activa'''.'''
 +
<source lang="php" enclose="div">
 +
[proyecto]
 +
app_launcher = 1
 +
</source>
 +
 
 +
=== Editar archivo de configuración para Araí ===
 +
Verificar que los datos provistos en el archivo <tt><path proyecto Kolla>/arai.json</tt>.
 +
 
 +
A continuación detallamos un ejemplo básico para presentar una instalación de Kolla.
 +
 
 +
Si desea obtener más detalles de cómo conformar este archivo, por favor visite en la [[SIU-Arai/usuarios/integracion-inicial-toba|'''documentación''']] el apartado ''Integrar a Arai-Registry la aplicación''.
 +
<source lang="php" enclose="div">
 +
{
 +
  "name": "siu/kolla",
 +
  "description": "SIU-Kolla, aplicación",
 +
  "scripts": {
 +
    "hooks": "SIU\\kolla\\AraiRegistryHooks"
 +
  },
 +
  "provide": [
 +
    {
 +
      "name": "app:siu/kolla",
 +
      "alias": "Kolla",
 +
      "description": "sistema de encuestas",
 +
      "version": "4.3.1",
 +
      "icon": "./www/img/logo-kolla-iso.png"
 +
    }
 +
  ],
 +
  "consume": [
 +
    {
 +
      "name": "service:siu/sso-saml-idp",
 +
      "version": ">=0.1.0"
 +
    },
 +
    {
 +
      "name": "api:siu/arai-usuarios",
 +
      "version": ">=0.1.0",
 +
      "options": {
 +
        "toba-rest": [
 +
          { "proyecto": "toba_usuarios", "rest-id": "rest_arai_usuarios" }
 +
        ]
 +
      }
 +
    }
 +
  ]
 +
}
 +
</source>
 +
 
 +
=== Generar clave ===
 +
Para la vinculación será necesario contar con la clave de encriptación.  Para generarla, será necesario correr el siguiente comando:
 +
 
 +
<source lang="php" enclose="div">
 +
bin/arai-cli arai:generar-key --destino=<ruta_a_la_llave_de_encriptacion>arai-sync.key
 +
</source>
 +
 
 +
Luego dirigirse al archivo <code><ruta_al_proyecto>/instalacion/instalacion.ini</code> y agregar la siguiente entrada con la ruta a la llave:
 +
 
 +
<source lang="php" enclose="div">
 +
arai_sync_key_file= "<ruta_a_la_llave_de_encriptacion>/arai-sync.key"
 +
</source>
 +
 
 +
=== Registrar SIU-Kolla en SIU-Araí ===
 +
El administrador de SIU-Araí deberá registrar el módulo mediante el comando:<source lang="php" enclose="div">
 +
bin/arai-cli registry:add  --maintainer nombre-encargado-admin --maintainer-email email-encargado-admin@uni.edu.ar http://url-arai-registry/arai-registry
 +
 
 +
./bin/arai-cli registry:sync --aceptar-pedidos-acceso
 +
</source><blockquote>''<u>Nota</u>: recordar tener ingresadas las variables de entorno correspondientes al usuario y password de registry''</blockquote><blockquote>'''''export ARAI_REGISTRY_USER=usuario_registry'''''  </blockquote><blockquote>'''''export ARAI_REGISTRY_PASS=password_registry'''''</blockquote>
 +
 
 +
=== Sincronizar SIU-Kolla en SIU-Araí ===
 +
Finalmente desde SIU-Araí deberá sincronizarse SIU-Kolla para que efectivamente sea incorporada la nueva vinculación:<source lang="php" enclose="div">
 +
bin/arai-cli registry:sync
 +
</source>
 +
 
 +
=== Importar Cuentas ===
 +
Para que las cuentas existentes en SIU-Kolla puedan utilizarse vinculadas será necesario realizar la exportación de dichas cuentas desde Kolla y luego importarlas desde Araí Usuarios. Para exportarlas se deberá ejecutar el siguiente comando:<source lang="php" enclose="div">
 +
toba proyecto exportar_usuarios_arai
 +
</source>
 +
 
 +
El comando anterior generará un archivo json que, luego, deberá utilizarse como entrada del siguiente comando en Araí Usuarios:<source lang="php" enclose="div">
 +
toba proyecto importar_usuarios_arai -f <ruta_al_archivo_generado> -m comparador
 +
</source>
  
== Configuración con SIU-Araí ==
+
Notar que al momento de importar, las cuentas deben ser identificadas por el Tipo y Nro. de Documento (el argumento de -m debe ser 1). Si alguna cuenta no es vinculada correctamente, el administrador de la plataforma Araí puede resolver manualmente los casos con conflictos.
Texxxxto.
 
  
== Servicios Web  ==
+
Para mayor información sobre la importación de cuentas dirigirse al siguiente [[SIU-Arai/Administrar#Importar cuentas desde una aplicaci.C3.B3n vinculada|enlace]], sección '''Importar cuentas desde una aplicación vinculada'''.
# [[SIU-Kolla/Version 4.3.0/WS/Encuestas|Encuestas]]
 
# [[SIU-Kolla/Version 4.3.0/WS/Habilitaciones|Habilitaciones]]
 
  
 
== Posibles errores en las peticiones ==
 
== Posibles errores en las peticiones ==

Revisión actual del 09:37 6 jul 2020

Siu-kolla iso.png

Introducción

Para lograr una comunicación con otros módulos SIU-Kolla ofrece diferentes servicios web a través de su API para la manipulación de entidades básicas. En algunos casos, lo servicios sólo involucran la recuperación de datos y, en otros, ofrecen un CRUD (Create-Retrieve-Update-Delete).

Configuración para SIU-Guaraní y otros

Para poder utilizar los Servicios Web se debe dar de alta el usuarios como Sistema Externo y, posteriormente, configurar dicho usuario en la configuración REST del proyecto:

Creación de usuario como Sistema Externo

Para registrar un Sistema Externo visite la siguiente página.

Creación de usuario REST

  • Editar el archivo <path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/servidor.ini
;servidor.ini
autenticacion = basic
y <path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/servidor_usuarios.ini
;servidor_usuarios.ini
[<nombre de usuario>]
password = sP6lgHwQopaqepOzgIWw ;cambiar!
  • Se debe reemplazar:
    • <path proyecto Kolla>: por el path donde se encuentra instalado el proyecto SIU-Kolla
    • <instancia>: por el nombre de la instancia

Para más información, consultar la explicación de REST de Toba.

Configuración para SIU-Araí

A continuación se detallan los puntos a tener en cuenta para configurar la conexión de SIU-Kolla con SIU-Araí.

Una vez completados estos puntos se deberá proceder a realizar la configuración restante desde SIU-Araí (ver documentación).

Crear datos de usuario rest para Araí Usuarios

Editar el archivo <path proyecto Kolla>/instalacion/i__<instancia>/p__kolla/rest/rest_arai_usuarios/cliente.ini

[conexion]
auth_usuario = nombre_usuario
auth_password = password_usuario

Editar archivo de instancia

Asegurarse que en el archivo instancia.ini este incorporado la variable full_url con la dirección completa de Kolla.

[kolla]
full_url = "http://direccion_completa_a_kolla"

Editar archivo de proyecto

Asegurarse que en el archivo proyecto.ini este incorporado la variable app_launcher activa.

[proyecto]
app_launcher = 1

Editar archivo de configuración para Araí

Verificar que los datos provistos en el archivo <path proyecto Kolla>/arai.json.

A continuación detallamos un ejemplo básico para presentar una instalación de Kolla.

Si desea obtener más detalles de cómo conformar este archivo, por favor visite en la documentación el apartado Integrar a Arai-Registry la aplicación.

{
  "name": "siu/kolla",
  "description": "SIU-Kolla, aplicación",
  "scripts": {
    "hooks": "SIU\\kolla\\AraiRegistryHooks"
  },
  "provide": [
    {
      "name": "app:siu/kolla",
      "alias": "Kolla",
      "description": "sistema de encuestas",
      "version": "4.3.1",
      "icon": "./www/img/logo-kolla-iso.png"
    }
  ],
  "consume": [
    {
      "name": "service:siu/sso-saml-idp",
      "version": ">=0.1.0"
    },
    {
      "name": "api:siu/arai-usuarios",
      "version": ">=0.1.0",
      "options": {
        "toba-rest": [
          { "proyecto": "toba_usuarios", "rest-id": "rest_arai_usuarios" }
        ]
      }
    }
  ]
}

Generar clave

Para la vinculación será necesario contar con la clave de encriptación. Para generarla, será necesario correr el siguiente comando:

bin/arai-cli arai:generar-key --destino=<ruta_a_la_llave_de_encriptacion>arai-sync.key

Luego dirigirse al archivo <ruta_al_proyecto>/instalacion/instalacion.ini y agregar la siguiente entrada con la ruta a la llave:

arai_sync_key_file= "<ruta_a_la_llave_de_encriptacion>/arai-sync.key"

Registrar SIU-Kolla en SIU-Araí

El administrador de SIU-Araí deberá registrar el módulo mediante el comando:
bin/arai-cli registry:add  --maintainer nombre-encargado-admin --maintainer-email email-encargado-admin@uni.edu.ar http://url-arai-registry/arai-registry

./bin/arai-cli registry:sync --aceptar-pedidos-acceso
Nota: recordar tener ingresadas las variables de entorno correspondientes al usuario y password de registry
export ARAI_REGISTRY_USER=usuario_registry
export ARAI_REGISTRY_PASS=password_registry

Sincronizar SIU-Kolla en SIU-Araí

Finalmente desde SIU-Araí deberá sincronizarse SIU-Kolla para que efectivamente sea incorporada la nueva vinculación:
bin/arai-cli registry:sync

Importar Cuentas

Para que las cuentas existentes en SIU-Kolla puedan utilizarse vinculadas será necesario realizar la exportación de dichas cuentas desde Kolla y luego importarlas desde Araí Usuarios. Para exportarlas se deberá ejecutar el siguiente comando:
toba proyecto exportar_usuarios_arai
El comando anterior generará un archivo json que, luego, deberá utilizarse como entrada del siguiente comando en Araí Usuarios:
toba proyecto importar_usuarios_arai -f <ruta_al_archivo_generado> -m comparador

Notar que al momento de importar, las cuentas deben ser identificadas por el Tipo y Nro. de Documento (el argumento de -m debe ser 1). Si alguna cuenta no es vinculada correctamente, el administrador de la plataforma Araí puede resolver manualmente los casos con conflictos.

Para mayor información sobre la importación de cuentas dirigirse al siguiente enlace, sección Importar cuentas desde una aplicación vinculada.

Posibles errores en las peticiones

  • 430: Errores de validación. Uno o más atributos de la entidad que se quiere guardar no paso la validación. El servicio retorna un arreglo con la descripción de cada uno de los errores.
  • 424: Usualmente ocurre cuando el recurso que se intenta manipular o recuperar no existe. Podrá sera cualquiera de las entidades involucradas (Por ejemplo, la Unidad de Gestión no existe).
  • 500: Error interno en el servidor, deberá revisarse el mensaje enviado al cliente.


< Volver