Autenticación del usuario y autorización de operaciones de firma
El proceso de autenticación y autorización de operaciones de firma para un usuario, requiere la realización de los siguientes pasos:
- Autenticación del sistema Cliente.
- Solicitud de firma
- Autenticación y autorización de la solicitud
- Ejecución de la firma.
A continuación se describen los siguientes apartados del proceso.
Autenticación del sistema Cliente
Para realizar operaciones de firma proporcionadas por Viafirma Fortress es necesario obtener un token asociado al cliente.
Para ello, Viafirma Fortress ofrece el siguiente método Rest, disponible en:
{viafirma_fortress_url}/oauth2/v1/token
Donde:
viafirma_fortress_url
: URL base de la implementación de Viafirma Fortress, por ejemplo https://sandbox.viafirma.com/fortress o https://fortress.viafirma.com/fortress
Esta URL recibe una serie de parámetros, que configuran y preparan la petición de Firma realizada por un cliente:
{viafirma_fortress_url}/oauth2/v1/token?
scope=client&
redirect_uri={url_de retorno_definido_en_viafirma_fortress}&
client_id={codigo_del_cliente_definido_en_viafirma_fortress}&
client_secret={clave_del_cliente_definido_en_viafirma_fortress}&
grant_type=client_credentials
Parámetro | Valor | Descripción |
---|---|---|
scope | client | Para servicios asociado a firma de documentos. |
redirect_uri | URL | Debe coincidir con una de las URL de retorno definidas en Viafirma Fortress |
client_id | Client ID definido en Viafirma Fortress | Identifica a la aplicación cliente que está realizado la petición |
client_secret | Clave del cliente definido en Viafirma Fortress | permite validar a la aplicación cliente que está realizado la petición |
grant_type | client_credentials | Indica que el cliente solicita acceso a recursos protegidos bajo su control |
Como resultado Viafirma Fortress, devolverá un objeto en formato application/json
con la información del token de acceso asociado al cliente.
{
"access_token": "1479cc2592a84cfb83c01402df613d01",
"token_type": "Bearer",
"expires_in": 3599
}
Errores del servicio
Los errores devueltos por el servicio (devueltos en formato application/json) tienen el siguiente aspecto:
{
"error": "error_code",
"error_description": "error_description"
}
Donde:
Parámetro | Valor | Descripción |
---|---|---|
error | string | Código del error |
error_description | string | Descripción del error |
Posibles errores:
Código de error | Error |
---|---|
invalid_request | Petición incorrecta. Alguno de los parámetros de entrada no es correcto. (HTTP Status: 400) |
invalid_client | Los parámetros asociados al cliente no son correctos(HTTP Status: 401) |
redirect_uri_mismatch | La URL indicada en el redirect_uri no está permitida (HTTP Status: 400) |
invalid_grant | Error al validar los permisos asociados al token (HTTP Status: 400) |
Solicitud de firma
Con el token de sistema cliente obtenido de la anterior llamada, el cliente llamará al método /signature de Viafirma Fortress, proporcionándole la información a firmar digitalmente por parte del usuario.
En la siguiente sección encontrará la descripción en detalle del método signature, así como de los parámetros que recibe.
Una vez procesada la información Viafirma Fortress devolverá al sistema cliente un objeto en formato application/json
, compuesto por un código de autorización y un código de ejecución
{
"authCode": "124d6a9b5eaa470396a4db454780f6da",
"exeCode": "96f1e73e5718438c8683846a2479d198"
}
Autenticación y autorización de la solicitud.
Una vez preparado el documento o los documentos a firmar, será necesario autenticar al usuario para poder realizar la firma.
Al igual que en el proceso a autenticación y autorización en operaciones de consulta, es necesario que el mismo se autentique con 1 o 2 factores de autenticación. Dependiendo de la configuración asociada al cliente de Viafirma Fortress, Viafirma Fortress puede solicitar un factor de autenticación o por el contrario Fortress forzará a que el usuario se autentique contra dos factores de autenticación de distinta categoría. Las categorías serán:
- Algo que sé → Knowledge
- Algo que tengo → Possession
- Algo que soy → Inherence
Para realizar el proceso de autenticación de un usuario, Viafirma Fortress ofrece una interfaz web, disponible en:
{viafirma_fortress_url}/oauth2/v1/auth
Donde:
viafirma_fortress_url
: URL base de la implementación de Viafirma Fortress, por ejemplo https://sandbox.viafirma.com/fortress o https://fortress.viafirma.com/fortress
Dicha URL recibe una serie de parámetros, que configuran y preparan la petición de autenticación y autorización en el proceso de firma:
{viafirma_fortress_url}/oauth2/v1/auth?
signature_code={codigo_autorización_de_la_firma}
scope=signature&
client_id={codigo_del_cliente_definido_en_viafirma_fortress}&
redirect_uri={url_de retorno_definido_en_viafirma_fortress}
Parámetro | Valor | Descripción |
---|---|---|
signature_code | Código de autorización de la firma | Código de autorización de la operación de firma |
scope | signature | signature: Para servicios asociado a la firma de documentos |
redirect_uri | URL | Debe coincidir con una de las URL de retorno definidas en Viafirma Fortress |
client_id | Client ID definido en Viafirma Fortress | Identifica a la aplicación cliente que está realizado la petición |
Solicitar usuario a firmar
Si el cliente no informó el campo user_code asociado al usuario, en el objeto en formato application/json
que empleó como parámetro en la llamada del método /signature
, Viafirma Fortress solicitará el código de usuario que desea realizar la firma.
Cuando el usuario introduzca su código de usuario en Fortress, Viafirma Fortress lo validará y le mostrará el conjunto de factores de autenticación en los que en los que el usuario se encuentra enrolado.
Viafirma Fortress almacenará el usuario una vez validado por al menos un Factor de autenticación en las cookies del navegador, para no tener que repetir el proceso cada vez que el usuario intente interactuar con Viafirma Fortress.
Factores de autenticación
Viafirma Fortress, mediante los diferentes factores de autenticación en los que el usuario esté enrolado, deberá asegurar la identidad del usuario.
Los factores de autenticación activos se pueden determinar durante la instalación de Viafirma Fortress, modificando los valores de los atributos correspondientes, que siguen un patrón del tipo fortress.idp.{codigo_del_idp}.active
(ver manual de instalación).
Durante todo el proceso de firma de documentos, el usuario podrá ver el número de documentos a firmar así como descargar los mismos.
Independientemente del Proveedor de Identidad seleccionado, en caso de éxito en la autenticación, se entiende que el usuario ha autorizado la operación y se devolverá el control a la aplicación cliente, redireccionando a la URL de retorno especificada en la configuración de la petición.
Proveedor de Identidad: Email
Se envía al email del usuario un código único, que deberá introducir en la pantalla de autorización una vez que lo reciba.
Proveedor de Identidad: SMS
Se envía al teléfono móvil del usuario un SMS con un código único, que deberá introducir en la pantalla de autorización una vez que lo reciba.
Proveedor de Identidad: OTP
Es necesario disponer de la app (Android/IOS) que generará un código, actualizado cada cierto tiempo. El usuario deberá introducir el código en la pantalla de autorización antes de que el código expire.
Proveedor de Identidad: LDAP
Se solicitará la contraseña LDAP del usuario (la configuración del servicio LDAP se realiza durante la instalación de Viafirma Fortress).
Proveedor de Identidad: PIN
Se solicitará el código Pin del usuario almacenado en Viafirma Fortress.
Proveedor de Identidad: Password
Se solicitará la password del usuario en Fortress.
Proveedor de Identidad: PUSH
Se solicitará un código al usuario enviado a través de una notificación PUSH a la app de su dispositivo móvil.
Seleccionar el certificado a emplear en la firma
Una vez que el usuario se ha autenticado correctamente usando alguno de los factores de autenticación disponibles, se mostrará la lista de certificados y certificados delegados del usuario (custodiados por Viafirma Fortress). Una vez que el usuario ha seleccionado uno de sus certificados, se devolverá el control a la aplicación cliente.
Ejecución de la firma
Finalmente cuando el usuario seleccione un certificado, Viafirma Fortress devuelve al sistema cliente la siguiente información, para que ejecute la firma:
- el certificado seleccionado
- el estado de la ejecución
- y la fecha de ejecución
results matching ""
No results matching ""