Saltar al contenido principal
La Mensageria se conecta con tres sistemas. Lerian STA lleva los archivos hacia y desde BACEN. Streaming Hub entrega los avisos de ejecución al executor. El executor llama a la API de ejecución de la Mensageria para obtener cada orden e informar su resultado. La Mensageria no llama a ningún ledger.

Lerian STA


La Mensageria consume el tópico lerian.streaming.br-sta, que produce Lerian STA. Registra seis tipos de evento:
  • br_sta_transfers.accepted
  • br_sta_transfers.rejected
  • br_sta_transfers.inconsistent
  • br_sta_transfers.canceled
  • br_sta_transfers.download_finished
  • br_sta_transfers.download_not_authorized
La Mensageria conserva los eventos cuyo source_product coincide con su configuración STA_SOURCE_PRODUCT. Ignora los eventos de otros productos. El campo direction de cada evento selecciona el pipeline. Una dirección es un archivo que Lerian STA descargó para la Mensageria. La otra es el resultado de un archivo de respuesta que la Mensageria envió. La base de datos también rechaza un segundo archivo de órdenes judiciales con el mismo digest SHA-256 para la misma institución. Con STA_TRANSFERS_ENABLED activado, la Mensageria envía cada archivo de respuesta a Lerian STA. Cómo funciona Lerian SISBAJUD describe el envío.

Eventos en dead letter

Un evento de Lerian STA que la Mensageria rechaza va al tópico lerian.streaming.br-sisbajud.dlq. El registro lleva un token de motivo, por ejemplo institution_unresolved o sha256_mismatch. POST /v1/institutions/{institutionId}/sta-dlq/{eventId}/acknowledge registra lo que un operador hizo con un evento en dead letter: replayed, recorded o escalated. Escribe un registro de auditoría. No elimina el evento, y el tópico conserva el evento durante su período de retención. Para reprocesar un evento, mueve el consumer group de vuelta al offset de origen que indican los headers del registro.

Streaming Hub y el executor


La Mensageria publica los avisos de ejecución y las sondas en lerian.streaming.br-sisbajud. Streaming Hub los entrega al executor por webhook. Un operador crea una suscripción de Streaming Hub para el executor, en el tenant default. Cada evento de la Mensageria lleva ese tenant. La suscripción lista exactamente dos tipos de evento: judicial_order.execution_requested y sisbajud_probe.requested. Streaming Hub firma cada entrega con el secreto de la suscripción. El executor verifica esa firma. Ejecuta cada entrega bajo su propio tenant y no usa el header de tenant de la entrega. No dependas del orden de llegada de los avisos de ejecución. La Mensageria mantiene el orden de las liberaciones de un sujeto en su base de datos.

API de ejecución


El executor lee las órdenes e informa los resultados a través de la API de ejecución. Estas operaciones no están en la referencia de API de la Mensageria. La API de ejecución tiene su propio listener en SISBAJUD_EXECUTION_ADDRESS. El valor predeterminado es :4032. La API principal en SERVER_ADDRESS no atiende estas rutas. El listener de ejecución acepta TLS 1.2 o superior y no tiene modo HTTP simple. SISBAJUD_EXECUTION_TLS_CERT_FILE y SISBAJUD_EXECUTION_TLS_KEY_FILE contienen el certificado y la clave del servidor. SISBAJUD_EXECUTION_MTLS_ENABLED activa el TLS mutuo. Entonces el listener exige un certificado de cliente que SISBAJUD_EXECUTION_CLIENT_CA_FILE verifica. El executor tiene su propio interruptor, MENSAGERIA_MTLS_ENABLED. Configura los dos interruptores con el mismo valor. Con TLS mutuo activado en la Mensageria y desactivado en el executor, el handshake TLS falla. El executor se autentica con un bearer token M2M. La Mensageria obtiene la identidad solo del token. El certificado de cliente no cambia la autorización.

Sonda canario

Cada EXECUTION_CANARY_INTERVAL_SEC segundos, la Mensageria publica un evento sisbajud_probe.requested para cada institución activada. El valor predeterminado es 300. Activa una institución en la Mensageria cuando un executor atienda esa institución.

Eventos


La Mensageria publica tres tipos de evento en el tópico lerian.streaming.br-sisbajud.
  • La operation de un aviso de ejecución es REQUISICAO_INFORMACAO, BLOQUEIO, DESBLOQUEIO o TRANSFERENCIA.
  • La Mensageria publica kek.rotated cada vez que registra una nueva versión de la KEK de una institución, con cualquiera de los proveedores de claves.
  • El header ce-type es studio.lerian.br-sisbajud.<resource>.<event>, por ejemplo studio.lerian.br-sisbajud.kek.rotated.
  • El header ce-schemaversion lleva la versión del schema.
  • El header ce-tenantid es default.
  • El tópico de dead letter de kek.rotated es lerian.streaming.br-sisbajud.dlq.

Tópicos

Con STREAMING_TOPIC_AUTO_PROVISION en su valor predeterminado, true, la Mensageria crea lerian.streaming.br-sisbajud y lerian.streaming.br-sisbajud.dlq al iniciar. Su identidad en el broker necesita permiso para crear estos tópicos. Si creas los tópicos antes del despliegue, configura STREAMING_TOPIC_AUTO_PROVISION como false.