Bandeja de Autorización
Resumen
Araí-Documentos provee una serie de servicios para que una aplicación pueda descargar las solicitudes de autorización que fueron enviados a su usuario para poder ser autorizadas.
La bandeja y solicitudes están en el contexto en el Proceso de Autorización, en esta sección nos concentraremos unicamente en los servicios que se proveen para implementar la bandeja de firma, autorización básica e inicio de un proceso de firma digital (ya sea por firmador standalone o firma cloud)
A continuación se detalla el mecanismo de autorización básica y proceso de firma digital.
Requisitos
- Araí-Usuarios: debe enviarse el usuario que crea el documento y aquel o aquellos usuarios que deben autorizar
- Repositorio: para guardar el documento original y versionar en caso de firma digital (Nuxeo, S3)
- Configuraciones dentro de Araí-Documentos de credenciales requeridas para Araí-Usuarios y Repositorio
- Identificador del usuario que va a consultar documentos
- Frontend para visualizar solicitudes pendientes de autorización (Huarpe SIUDocumentosBundle)
- Aplicación que implemente Firma Digital (solo en el caso que se utilice Firma Digital): SIU Firmador y FirmAR
Limitaciones
Para disparar un proceso de firma se requiere implementar una bandeja donde el usuario pueda visualizar sus Solicitudes de Autorización pendientes, y mediante estas generar un Proceso de Firma.
Servicios comunes para Autorización Básica y Firma Digital
Existen dos servicios que se utilizan para obtener un encabezado con información útil para el usuario y para poder descargar y visualizar el documento desde cualquier frontend (con acceso a la api de Araí-Documentos): Estos dos servicios son la obtención del listado de solicitudes y un servicio para obtener detalles de una solicitud
GET /backend/autorizacion/solicitudes
REQUEST
Campos obligatorios (Query Param)
Nombre | Tipo | Descripcion |
---|---|---|
id_usuario_sso | string | Identificar del Usuario, debe existir en Arai-Usuarios y corresponde al Usuario al cual se enviaron [Solicitudes de Autorización](#Solicitud de Autorización) |
RESPONSE
{
"header": {
"tipo_firma": "siu"
},
"listado": [
{
"solicitud": "string",
"documento_titulo": "string",
"documento_descripcion": "string",
"creacion": "string",
"rol": "string",
"situacion": "int",
"situacion_descripcion": "string",
"acciones": "basica",
"referencia_interna": {},
"identificador": {}
}
]
}
Nombre | Tipo | Descripcion |
---|---|---|
tipo_firma | String | No utilizado |
listado | Array | Listado de [Solicitudes de Autorización](#Solicitud de Autorización) |
solicitud | string | Identificador del documento en Arai-Documentos |
documento_titulo | string | Titulo del documento creado |
documento_descripcion | string | Descripción del documento creado |
creacion | string | Fecha de Solicitud |
rol | string | Rol del autorizante de esta Solicitud de Autorización, puede ser "Confirmante Opcional" o "Confirmante Necesario". Por el momento solo se usa internamente |
situacion | int | Corresponde al estado de la solicitud enviada, en este servicio solo se deberían recibir solicitudes en estado "1" que corresponde a una solicitud pendiente |
situacion_descripcion | string | Descripción del campo anterior: "Pendiente" |
acciones | string | Indica tipo de firma que puede realizarse sobre el documento relacionado a la Solicitud: basica en este caso |
referencia_interna | json | Objeto json enviado por la aplicación de origen para identificar al documento |
identificador | Json | Corresponde a un identificador del documento. Por ejemplo tipo, numero y año |
FILTROS Y PAGINADO (A partir de docs-api>1.4)
Campos no obligatorios (Query Param)
- Filtros
Nombre | Tipo | Descripción |
---|---|---|
tipo_firma | string | Puede ser basica o firma |
tipo_documento | string | Ver listado de tipos de documentos |
titulo | string | Titulo generado para el documento |
descripcion | string | Descripción del documento |
f_emision | string | Fecha en que se creo el documento desde el sistema de origen |
u_origen | string | Usuario que creo el documento (Corresponde al identificador de usuario) |
Todos los filtros utilizan con condicion;valor
. Por ejemplo: es_igual_a
o es_distinto_de
Para mas detalle sobre cada filtro ver definición de la api
- Paginado y Ordenamiento
Nombre | Tipo | Descripción |
---|---|---|
page | string | Numero de pagina |
limit | string | Cantidad de registros por pagina |
order | string | Campo por el cual se desea ordenar |
- Order
Campos separados por coma. Se define como order=param1,param2
, valores permitidos: creacion,tipo_documento,nivel_autorizacion
.
Utiliza creacion
para ordenamiento ascendende y -creacion
para descendente
Para mas detalle sobre paginado y ordenamiento ver definición de la api
GET /backend/autorizacion/solicitudes/{uid_solicitud_autorizacion}/detalle
REQUEST
Campos obligatorios (Path Param)
Nombre | Tipo | Descripcion |
---|---|---|
uid_solicitud_autorizacion | string | uid de la solicitud que se desea consultar |
RESPONSE
{
"origen": {
"id_usuario_sso": "string",
"nombre_usuario": "string",
"id_instalacion": "string"
},
"tipo_documento": {
"id_tipo_documento": 0,
"descripcion": "string"
},
"id_tramite": "string",
"autorizacion": {
"modelo": "string",
"autorizado": true,
"autorizantes": [
{
"usuario_sso": "string",
"nivel": "string",
"estado": "string",
"secuencia": "string",
"fecha": "string"
}
]
}
}
Nombre | Tipo | Descripción |
---|---|---|
origen.id_usuario_sso | String | Identificador del usuario que genero el documento |
origen.nombre_usuario | String | Nombre del usuario que genero el documento |
origen.id_instalacion | String | Identificador de la instalación que genero el documento |
tipo_documento.id_tipo_documento | String | Id tipo documento |
tipo_documento.descripcion | String | Código descripción del tipo de documento |
id_tramite | String | Id del tramite en sistema de expedientes |
autorizacion.modelo | String | Modelo de autorización. Ver Proceso de Autorizacion |
autorizacion.autorizado | String | Boolean que indica si el documento esta autorizado completamente o no |
autorizacion.autorizantes | String | Listado de autorizaciones pendientes |
usuario_sso | String | Nombre de usuario con solicitud pendiente |
nivel | String | Nivel de autorización requerido |
estado | String | Estado de la autorización |
secuencia | String | Orden en caso de cadena |
fecha | String | Fecha en la que se autorizo. Null si no esta autorizado |