Implementación FirmAR
Implementación FirmAR
Introducción
En la sección Firma Digital FirmAR vimos los servicios que se requieren para integrar Araí-Documentos con el Proceso de Firma en FirmAR.
En esta sección se pretende explicar en mas detalle los requisitos y configuraciones requeridas para poder interactuar con la plataforma firmar.gob.ar.
Requisitos
Administrativos
Es necesario gestionar acceso al ambiente de test de firmar.gob.ar . Asi van a poder ser una Autoridad de Registro (AR) de prueba para la Universidad.
Para realizar esto, se debe enviar un mail a consultapki@modernizacion.gob.ar con los datos de uno o varios usuarios (apellido/nombres, CUIT y email) que van a ser Oficiales de Registro (OR) .
Sugerimos enviar el siguiente "tema" en el mail: "UUNN: Solicitud de creacion de AR en ambiente de pruebas de firmar.gob.ar para Expediente Electrónico Integrado", donde UUNN lo reemplaces por tu Universidad.
Con el OR vas a poder crear nuevos usuarios que tengan certificados para firmar digitalmente. Nosotros podemos guiarte con los pasos a seguir, ya que es mucho menos complicado y costoso que utilizar un token físico pero requiere, entre otras cosas, utilizar una app de One Time Password (OTP) para incrementar la seguridad
Técnicos
Al ser una AR, la Universidad va a recibir una API key y secret que va a ser necesario configurar en Araí-Documentos.
A continuación se detalla como se realiza la integración con FirmAR en Araí-Documentos. Y luego se detalla cómo se debe configurar
Integración FirmAR
En el siguiente manual se indican los servicios requeridos por firmar.gob.ar para implementar un proceso de firma digital: Manual de Integración Firmar.
De manera resumida vamos a ver los servicios que se utilizan para comunicarse con la plataforma FirmAR.
FirmAR (FlowChart)
En el siguiente gráfico los recuadros en color rojo oscuro representan los servicios que intervienen en el proceso de firma, entre FirmAR y Arai-Documentos
FirmAR Flujo |
---|
Actores | Descripción |
---|---|
Usuario | Persona que ingresa en Huarpe y que va a realizar una Autorizacion |
Bandeja Huarpe | SIU Documentos Bundle: App para visualizar las solicitudes de autorizacion pendientes de un Usuario y disparar Procesos de Firma |
Arai-Documentos | Servicios intermedios Firma Digital |
FirmAR | Plataforma de Firma Digital |
AppOrigen | Aplicacion que creo el Documento y lo envió a Autorizar |
Nuxeo | CMS |
A continuacion se detallan los servicios resaltados en rojo oscuro:
Post AccessToken
Obtener AccessToken para luego poder enviar un Documento a Firmar. Ver detalle del servicio
Post Documento a Autorizar, UrlRedirect, AccessToken
Se sube el documento a autorizar a FirmAR. Ver detalle del servicio
Enviar Documento Firmado
Servicio de Arai-Documentos donde FirmAR sube el documento una vez que el Usuario lo Firma Digitalmente. Ver detalle del servicio
POST ra/oauth/token
REQUEST
Campos obligatorios (Url Params)
Nombre | Tipo | Descripcion |
---|---|---|
grant_type | string | 'client_credentials' |
HEADERS
Nombre | Value | Descripción |
---|---|---|
Accept | application/json | Formato en el que se reciben la respuesta |
Authorization | Basic apitokenkey:secret | Corresponde a los datos configurados de autenticacion en FirmAR |
RESPONSE
Recibe la siguiente respuesta en formato json
{
"access_token": "eyJhbGciOiJSUzI1NiJ9.eyJhdWQiOlsicmVzb3VyY2VzIl0sInNjb3BlIjpbInJlYWQiX SwiZXhwIjoxNTA5NDI0NzMxLCJhdXRob3JpdGllcyI6WyJST0xFX1VTRVIiXSwian RpIjoiZTU3ODZmMGUtOWNmZS00ZjFhLWJmODktZGVmZDkyNGJmMTNhIiwiY 2xpZW50X2lkIjoiNmMyZDQxYTQtYjBlZS00ZWRjLTgxY2ItNWQyZTJlZWQ3YjY 3In0.WkFK_lX3pGIv_P- y5WiGS5Yo2jW68GA46kjTEtMCc6N_pbbmvIpztOm9mZycytufcKusFywlfvWHhlYk n7HHFW5Kd2imDZXKqkaW- UjzKzdhxhz8ht74yc19DbedlHEppQmGMAbyuwKECz4IBihTySB455swmnmZcPU6qId4QfE",
"token_type": "bearer",
"expires_in": 43199,
"scope": "read",
"jti": "e5786f0e-9cfe-4f1a-bf89-defd924bf13a"
}
Nombre | Tipo | Descripcion |
---|---|---|
access_token | string | Devolvera el access_token requerido para comunicarse en los servicios siguientes |
token_type | string | 'Bearer' se refiere a token authentication |
expires_in | int | Expiración del token |
scope | string | Read |
jti | string | JWT id |
POST firmador/api/signatures
REQUEST
Campos obligatorios (Body Json)
Nombre | Tipo | Descripcion |
---|---|---|
cuil | string | String que identifica al usuario y permite saber cual es el usuario que debe firmar el documento en FirmAR |
metadata | object | Datos requeridos para identificar el documento |
tipo | string | Tipo de Firma: "firmar" |
token | string | Identificador del Documento dentro del Proceso de Firma, para que en la llamada de vuelta Araí-Documentos pueda identificarlo |
urlRedirect | string | Url a la que se redigira luego de realizarse la firma en FirmAR |
type | string | Tipo de documento: PDF |
documento | string | string del documento en base 64 que se envia a firmar |
{
"cuil": "string",
"metadata": {
"tipo": "firmar",
"token": "string"
},
"urlRedirect": "string",
"type": "PDF",
"documento": "string" //Base64
}
HEADERS
Nombre | Value | Descripción |
---|---|---|
Accept | application/json | Formato json |
Authorization | Authorization: Bearer access_token | La autenticación se arma con el access token obtenido de RA |
RESPONSE
Recibe la siguiente respuesta en el header de la respuesta
HTTP 200 Location: /api/signatures/30c2f5d8-46e4-4a52-8e1a-03367e4bd164
Nombre | Tipo | Descripcion |
---|---|---|
Location | string | Url a la cual se debe redirigir al usuario para que pueda firmar el documento enviado |
POST <url-configurada-ra>
La url-configurada-ra es la URL que se configura en FirmAR asociada al apitokenkey:secret.
Corresponde a una URL que se debe proveer por cada Api User que se configura en FirmAR y es provista por Araí-Documentos:
Este es un servicio de Arai-Documentos donde se recibiran los Documentos Firmados