> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Operando Lerian STA

> Aislamiento multitenant y sondeadores por tenant, gestión de credenciales del BACEN y rotación de contraseña en tres fases, monitoreo de vencimiento de contraseña y de salud del trust store, TTL de protocolo y retención entrante, y el grano de reconciliación detrás de Lerian STA.

Lerian STA corre contra las realidades operativas del hub de archivos del BACEN: credenciales por institución que vencen, una cadena de confianza que debe mantenerse válida, y un paso de creación de protocolo que el BACEN no hace idempotente. Gestiona cada una bajo aislamiento multitenant y reconcilia al grano del número de protocolo del BACEN.

## Multitenancy y sondeadores

***

Lerian STA es multitenant con **aislamiento físico de base de datos por tenant** — los datos de cada tenant viven en su propia base de datos, sin una columna de tenant compartida en las filas. Los **sondeadores** por tenant se aprovisionan con un resync de aproximadamente un minuto. El sondeo de estado saliente **se auto-encola** con un backoff indexado por estado, y el tráfico hacia el BACEN respeta límites por credencial: las operaciones de comando se topan en aproximadamente 10 por minuto por credencial (compartidas con la rotación), mientras que el sondeo de estado escala dinámicamente hasta aproximadamente 100 por minuto.

## Credenciales

***

Cada credencial es una **contraseña de operador** del BACEN, identificada por **código de institución e ID de operador**. Se almacena **cifrada** (cifrado envolvente) y nunca se devuelve ni se registra. Los operadores pueden **crear**, **probar la conectividad de**, **rotar** y **revocar** una credencial.

## Rotación de contraseña

***

La rotación es un protocolo en **tres fases**, de modo que una falla en pleno vuelo nunca pierde la autenticación:

1. **Preparar** la nueva contraseña localmente.
2. **Cambiarla** en el BACEN.
3. **Promoverla** localmente.

Un **worker de recuperación** resuelve las rotaciones en curso. Si el BACEN no acepta ni la contraseña vieja ni la nueva, la credencial queda **bloqueada en un estado de error** a la espera de un reinicio manual.

## Monitoreo de vencimiento de contraseña

***

El BACEN impone cambios periódicos de contraseña. Lerian STA rastrea el **vencimiento reportado por el BACEN** de cada credencial a través de una caché read-through y proyecta una **banda de salud** — sana, de advertencia, crítica o vencida — con los días restantes, para que un operador rote antes de que el operador quede bloqueado en el BACEN.

## Trust store

***

Cada tenant carga los **certificados raíz X.509** en los que Lerian STA confía al establecer el TLS mutuo con el BACEN. Lerian STA parsea el PEM, registra la **huella y la ventana de validez** de cada certificado y reporta un estado de vencimiento por certificado más un **resumen del pool** — total, por vencer y vencidos. La **ventana de por vencer** tiene por defecto **30 días** y es ajustable por el operador con recarga en caliente, para que las raíces se renueven antes de que la cadena de confianza TLS se rompa.

## Retención y TTL de protocolo

***

* **TTL de protocolo saliente** — cada protocolo saliente tiene un tiempo de vida acotado de reloj de pared (44 horas por defecto) para terminar la subida antes de que el BACEN lo expire.
* **Retención entrante** — cada configuración de fuente entrante fija cuánto tiempo se retienen sus artefactos descargados: 365 días por defecto, configurable de 1 a 3.650 días.

## Reconciliación y contingencia

***

Lerian STA reconcilia al grano de **una transferencia por número de protocolo del BACEN**; el número de protocolo es la **clave de idempotencia** en el descubrimiento, de modo que un archivo nunca se procesa dos veces.

El BACEN no ofrece **creación de protocolo idempotente**: recrear un protocolo duplicaría el archivo en el BACEN. Por eso, si Lerian STA falla entre crear un protocolo en el BACEN y persistirlo localmente, la transferencia queda estacionada en un **estado local que requiere que un operador lo resuelva** — nunca se reintenta en silencio.
