Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Estado
EN USO

Descripción del proceso de autenticación de peticiones en los servicios SIF.



Descripción

Para la autenticación de peticiones en los servicios SIF se utilizan las cabeceras 'Authorization' y timestamp', validando que el contenido de éstas sea correcto en cuanto a estructura de acuerdo el algoritmo definido por el estándar SIF, además se verifica que el contenido de la cabecera 'Authorization' contenga datos válidos para los valores 'appKey' y secretKey verificando que estos valores correspondan con datos guardados en la BDC.

Referencia SIFExtensión de SIF 3.0.1
Parámetros o Campos


CamposDescripciónReglas de negocio
appKey

Nombre de aplicación que se utiliza para crear el token de sesión.

Se valida que este valor coincida con el valor almacenado en la tabla 'persona_login.login' del registro del usuario SIF correspondiente.

secretKeyClave secreta del usuario que se utiliza para crear el token de sesiónSe valida que este valor coincida con el valor almacenado en la tabla 'persona_login.contrasenia_clf' del registro del usuario SIF correspondiente.
Ejemplo de valor de cabecera

Authorization: SIF_HMACSHA256 U0lTOk16UTRZV1kxWTJJMlpUY3hOVEV4WVdWbVpESTNNVEF5TWpReFlXTmxPV1V5Tm1Rek1qVTBNMlk0T0RReE1XWmpaR0l3TTJKbE5XWmlNbU5rTnpsaU1RPT0=

timestamp: 2014-09-04T09:22

Flujo del proceso de creación de Environment

Cuando recibe una petición POST en el servicio /environments/environment se ejecutan los siguientes pasos para verificar la autenticidad de la petición y crear un token de sesión:


  1. Verificar que los headers 'Authorization' y 'timestamp' estén presentes en la petición.
  2. Separar el contenido del header 'Authorization' por el caracter ' ' (espacio vacío) de manera que el primer valor corresponda con el método de autenticación y se valida que el método de autenticación sea válido. De momento el único método soportado es 'SIF_HMACSHA256'.
  3. Decodificar Base64 el contenido del segundo elemento del header 'authorization' para obtener los siguientes elementos 'appKey' y una cadena codificada Base64(HMAC SHA 256). Para el header 'authorization' de ejemplo obtendríamos el siguiente valor:
      • SIS:MzQ4YWY1Y2I2ZTcxNTExYWVmZDI3MTAyMjQxYWNlOWUyNmQzMjU0M2Y4ODQxMWZjZGIwM2JlNWZiMmNkNzliMQ== 
  4. Separar la cadena resultante por el caracter ':', el primer elemento corresponde con el 'appKey' correspondiente al usuario SIF.
  5. Realizar un consulta a la base de datos para verificar que el 'appKey' existe y corresponde con un usuario SIF válido.




Enlaces





  • No labels