Interfaz Guaraní 2 - Kolla
Desde la versión Guaraní 2.9
Advertencia:
Los servicios web REST no utilizan certificados. Es altamente recomendable utilizar una conexión https.
Requerimientos:
PHP 5.4.0 - Por la versión de Guzzle que tiene g3w2.
En kolla
1. Crear un sistema externo en el backend de Kolla. El sistema adiciona el prefijo 'ue_', si introduce guarani, el nombre de usuario será 'ue_guarani' por ejemplo.
2. Crear un usuario de rest con el nombre ue_guarani.
Editar el archivo instalacion/i_ _[instancia]/p_ _kolla/rest/servidor.ini y servidor_usuarios.ini
;servidor.ini autenticacion = basic ;servidor_usuarios.ini [ue_guarani] password = sP6lgHwQopaqepOzgIWw ;cambiar!
Ref Toba
En Guaraní:
1. Crear un usuario para el servicio 'kolla' de REST.
En el archivo /instalacion/servicios_web_config.php, agregar dentro del arreglo de 'consumidos' la configuración del mismo:
'consumidos' => array( 'kolla' => array( 'tipo' => 'rest', 'parametros' => array( //Son opciones de la librería Guzzle 'base_url' => "https://url_kolla/kolla/3.5/rest/", 'defaults' => array ( 'auth' => array('ue_guarani','sP6lgHwQopaqepOzgIWw'), //user, password, segun guzzle 'verify' => false //no verificar cert ssl si no están firmados. ) ) ), )
Versiones anteriores a Guaraní 2.9
Toda la configuración necesaria se realiza en Kolla y en G3W2, no es necesario realizar ningún paso en Guaraní.
NOTAS: Correr todos los comandos como sudo.
Conexión Guaraní-2 - Kolla
En Kolla
1. Crear certificados para los servicios web. Tienen que ser .x509v3. Los mismos pueden ser creados por cualquier mecanismo, uno simple es con Toba:
./bin/toba servicios_web generar_cert -p kolla -i <instancia>
2. Crear un sistema externo en el backend de Kolla. Anotar el nombre de usuario 'ue_[nombre]'
En Guaraní-2 (cliente externo)
3. Crear certificados para los servicios web. Tienen que ser .x509v3. Los mismos pueden ser creados por cualquier mecanismo, desde G3W2 se puede usar el comando generar_ssl. El mismo lee la configuración desde un archivo openssl.ini y genera los certificados en esa misma carpeta (relativa a /instalacion).
El siguiente comando genera los mismos en la carpeta /instalacion/servicios_web/, donde existe /instalacion/servicios_web/openssl.ini
./bin/guarani generar_ssl servicios_web
4. Indicar el certificado del servidor de kolla, y los certificados propios en el archivo /instalacion/servicios_web_config.php.
Se recomienda, como convención, copiar el certificado de Kolla (publica.crt) a la carpeta de:
instalacion/servicios_web/consumidos/kolla.crt
5. En el archivo /instalacion/config.php, agregar la url donde se aloja Kolla, que debe estar en el mismo dominio que el G3W2:
'url_kolla' => 'http://localhost/kolla/3.4/aplicacion.php',
En Kolla
6. Indicar el certificado del G3w2 para el servicio 'habilitaciones'- (G3W2 - Ver creación en siguiente sección). El ID del cliente debe ser el nombre de usuario del sistema externo que lo representa. El nombre del parámetro es 'usuario'.
./bin/toba servicios_web serv_configurar -p kolla -i <instancia> -s habilitaciones -h usuario=ue_sistema_externo -c ./ruta/certificado_publico/guarani/publica.crt
Observaciones para la instancia producción de Kolla
Se debe indicar la ubicación de la carpeta de instalación para que pueda generar los certificados:
export TOBA_INSTALACION_DIR=/home/user/proyecto/kolla/instalacion
Se debe proveer el archivo de configuración openssl.ini con los parámetros de configuración propios de cada institución.