Herramientas de usuario

Herramientas del sitio


ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy:microfrontend

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy:microfrontend [2024/06/13 15:08]
192.168.177.2 [Paso 1]
ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy:microfrontend [2024/06/13 15:39] (actual)
192.168.177.2
Línea 13: Línea 13:
  
 ===== Paso 2 ===== ===== Paso 2 =====
-El parámetro ​legacyToken es un string con el siguiente formato **contextClient@uuid** el cual al ser separados ​por el simbolo @ se obtendran 2 fragmentos.+El front recibe el parámetro ​tipo string ​**legacyToken** ​con el siguiente formato **contextClient@uuid** el cual al ser separado ​por el simbolo @ se obtendran 2 fragmentos.
  
    * **contextClient**:​ Código del cliente.    * **contextClient**:​ Código del cliente.
Línea 19: Línea 19:
    * **separador**:​ Caracter de separación de los fragmentos del token legacy. Por defecto se define @     * **separador**:​ Caracter de separación de los fragmentos del token legacy. Por defecto se define @ 
  
-Ejemplo: legacyToken=674157584668526572786e5371774d4552512b3741513d3d@1aba4e1f294858f0e063658c010a6fec+Ejemplo: ​**legacyToken**=674157584668526572786e5371774d4552512b3741513d3d@1aba4e1f294858f0e063658c010a6fec
  
   * **contextClient**:​ 674157584668526572786e5371774d4552512b3741513d3d   * **contextClient**:​ 674157584668526572786e5371774d4552512b3741513d3d
Línea 26: Línea 26:
  
 ===== Paso 3 ===== ===== Paso 3 =====
-Se debe tomar el contextClient y desencriptarlo para identificar el cliente. ​+Se debe tomar el **contextClient** y desencriptarlo para identificar el cliente ​por medio del método **decrypt-legacy-secure-token** del api-legacy enviando en el parametro **secureToken** el contextClient recibido en el request de consumo de la aplicación legacy que hace la petición.
 Ejemplo: Ejemplo:
  
 {{ :​ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy:​apilegacy-decrypt.png?​600 |}} {{ :​ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy:​apilegacy-decrypt.png?​600 |}}
  
 +Como se puede observar en la imagen de ejemplo el contextClient devuelve viva-dev.
  
-===== Paso ===== +===== Paso ===== 
-Se debe consumir el método del api **autenticate-microfrontend-launcher** el cual puede ser consultado en la documentación de la [[ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy#​Capa de lógica de negocio|Capa de lógica de negocio]] y pasar el contextClient como token en el header y el uuid como parametro.+Al desencriptar el conteextclient se debe consumir el método del api **autenticate-microfrontend-launcher** el cual puede ser consultado en la documentación de la [[ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy#​Capa de lógica de negocio|Capa de lógica de negocio]] y pasar el contextClient como token en el header y el uuid como parametro.
  
 Si el uuid está vigente se devolverán los parametros de sesión encriptados con el código 200. Lo que permitirá el acceso a la funcionalidad. Si el uuid está vigente se devolverán los parametros de sesión encriptados con el código 200. Lo que permitirá el acceso a la funcionalidad.
Línea 43: Línea 44:
 {{ :​ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​api-legacy2.png?​600 |}} {{ :​ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​api-legacy2.png?​600 |}}
  
-===== Paso ===== +===== Paso ===== 
-Al realizar la autenticación de forma correcta se obtendra un hash que contendrá los parametros de sesión pero estarán encriptados por lo tanto se debe consumir el servicio **decrypt-legacy-secure-token** el cual recibirá ​2 argumentos uno en el header llamado token el cual recibirá el contextClient y un parámetro secureToken ​donde se le enviará ​el hash obtenido del proceso de autenticación como se ve en la imagen.+Al realizar la autenticación de forma correcta se obtendra un hash que contendrá los parametros de sesión pero estarán encriptados por lo tanto se debe consumir el servicio **decrypt-legacy-secure-token** el cual recibirá ​ en el parámetro secureToken el hash obtenido del proceso de autenticación como se ve en la imagen.
  
-{{ :​ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​api-legacy3.png?600 |}}+{{ :​ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy:​apilegacy-decrypt02.png?600 |}}
  
 El servicio devuelve un objeto json con la siguiente estructura. El servicio devuelve un objeto json con la siguiente estructura.
Línea 52: Línea 53:
 <code yaml> <code yaml>
 { {
-  ​"​idOption": ​1,//​Identificador del Path del microfrontend +    ​"​idOption": ​"​00-00"​
-  "​tituloVentana":​ "​Maestro Terceros",​//Titulo de la opción en la aplicación legacy +    "​tituloVentana":​ "​Maestro Terceros",​ 
-  "​nitEmpresa": ​800167494,//Nit de la empresa del cliente +    "​nitEmpresa": ​"​811032187.8"​
-  "​nombreEmpresa":​ "Uniempresa de prueba",//Nombre de la empresa del cliente +    "​nombreEmpresa":​ "CAPACITACION", 
-  "​codigoMempresa":​ 9999999999,//Código de la empresa del cliente +    "​codigoMempresa": ​"9999999999"
-  "​codigoUsuario": ​1,//Código del usuario en la aplicación legacy +    "​codigoUsuario": ​"​3"​
-  "​nombreUsuario":​ "Pepito Perez",//Nombre del usuario en la aplicación legacy +    "​nombreUsuario":​ "ADMIN", 
-  "login": "123456789",//login del usuario en la aplicación legacy  ​ +    "codigoDependencia": "9", 
-  "​fechaSistemaModulo":​ "06/06/24",//Fecha del sistema en la aplicación legacy +    "​nombreDependencia":​ "​AVIMA",​ 
-  "codigoDependencia": ​66//​(Opcional) Código de la dependencia,​ solo aplica para la aplicación de presupuesto+    ​"​fechaSistemaModulo":​ "1/12/2022", 
 +    "login": ​"​SICOF"​
 } }
 </​code>​ </​code>​
 +
 +===== Paso 6 =====
 +Se debe tomar de los parámetros desencriptado el idOption y consumir el servicio **ecosystem-config-ws/​frontend-route/​api/​v1/​get** para obtener el path del microfrontend como se ve a continuación;​
 +
 +{{ :​ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy:​frontendroute.png?​600 |}}
 +
 +De esta manera se asegura la inicialización dinámica de las rutas del frontend.
  
 ===== Consideraciones ===== ===== Consideraciones =====
  
-  * El uuid es de un solo uso, de esta manera aseguramos la integridad ​de las integraciones y consumos de los nuevos componentes. +  * El uuid es de un solo uso, de esta manera aseguramos la integridad ​en los consumos de los nuevos componentes. 
-  * Los parámetros ​desencriptado ​son la base para la inicialización del microfrontend.+  * Los parámetros ​desencriptados ​son la base para la inicialización del microfrontend.
   * Salvo los parámetros opcionales los demás son requeridos por lo tanto se aconseja aplicar validaciones de esas propiedades al desencriptarlas.   * Salvo los parámetros opcionales los demás son requeridos por lo tanto se aconseja aplicar validaciones de esas propiedades al desencriptarlas.
   * Todo consumo microfrontend es almacenado para efectos de auditoria.   * Todo consumo microfrontend es almacenado para efectos de auditoria.
 +  * Se debe parametrizar el idOption por opción o grupo en cada cliente.
  
  
 [[ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy|←Regresar]] [[ada:​howto:​sicoferp:​factory:​new-migracion-sicoferp:​apilegacy|←Regresar]]
  
ada/howto/sicoferp/factory/new-migracion-sicoferp/apilegacy/microfrontend.1718291315.txt.gz · Última modificación: 2024/06/13 15:08 por 192.168.177.2