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
Una vez que la institución se constituyó como Autoridad de Registro de AC-MODERNIZACIÓN, es necesario gestionar acceso al ambiente de test de firmar.gob.ar y de esa manera van a poder ser una Autoridad de Registro (AR) de prueba para la Universidad.
Para realizar esto, se debe ingresar a https://incidencias.innovacion.gob.ar/ e iniciar un trámite por incidencias solicitando el acceso al ambiente de prueba. Se sugiere titular la incidencia de la siguiente manera: "UUNN: Solicitud de creacion de AR en ambiente de pruebas de firmar.gob.ar para Expediente Electrónico Integrado", donde UUNN se deberá reemplazar por tu Universidad.
Para la creación de uno o más usuario/s de prueba en la aplicación se deberá detallar nombre y apellido, CUIL y correo electrónico.
Posteriormente se les solicitará una URL de Callback para la cual se deberá tener en cuenta:
- protocolo "http://" o "https://" y funcionando en el puerto estándar (80 o 443 respectivamente)
- no se acepta utilizar la dirección IP. El nombre de host especificado debe resolver por dns en internet
- en caso de https, el certificado utilizado para el sitio debe ser reconocido por los navegadores actuales.
Una vez que las pruebas del sistema sean exitosas, deberán realizar el trámite de integración a través de la plataforma Trámites a Distancia (TAD).
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