> ## 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 o Lerian STA

> Isolamento multitenant e sondadores por tenant, gestão de credenciais do BACEN e rotação de senha em três fases, monitoramento de vencimento de senha e de saúde do trust store, TTL de protocolo e retenção de entrada, e o grão de reconciliação por trás do Lerian STA.

O Lerian STA roda contra as realidades operacionais do hub de arquivos do BACEN: credenciais por instituição que vencem, uma cadeia de confiança que precisa se manter válida, e um passo de criação de protocolo que o BACEN não torna idempotente. Ele gerencia cada uma sob isolamento multitenant e reconcilia no grão do número de protocolo do BACEN.

## Multitenancy e sondadores

***

O Lerian STA é multitenant com **isolamento físico de banco de dados por tenant** — os dados de cada tenant vivem no seu próprio banco de dados, sem uma coluna de tenant compartilhada nas linhas. Os **sondadores** por tenant são provisionados com um resync de aproximadamente um minuto. A sondagem de status de saída **se auto-enfileira** com um backoff indexado por estado, e o tráfego para o BACEN respeita tetos por credencial: as operações de comando são limitadas a aproximadamente 10 por minuto por credencial (compartilhadas com a rotação), enquanto a sondagem de status escala dinamicamente até aproximadamente 100 por minuto.

## Credenciais

***

Cada credencial é uma **senha de operador** do BACEN, identificada por **código de instituição e ID de operador**. Ela é armazenada **criptografada** (criptografia envelopada) e nunca é devolvida nem registrada em log. Os operadores podem **criar**, **testar a conectividade de**, **rotacionar** e **revogar** uma credencial.

## Rotação de senha

***

A rotação é um protocolo em **três fases**, de modo que uma falha em pleno voo nunca perde a autenticação:

1. **Preparar** a nova senha localmente.
2. **Trocá-la** no BACEN.
3. **Promovê-la** localmente.

Um **worker de recuperação** resolve as rotações em curso. Se o BACEN não aceitar nem a senha antiga nem a nova, a credencial fica **travada em um estado de erro** à espera de uma reinicialização manual.

## Monitoramento de vencimento de senha

***

O BACEN impõe trocas periódicas de senha. O Lerian STA rastreia o **vencimento reportado pelo BACEN** de cada credencial através de um cache read-through e projeta uma **faixa de saúde** — saudável, de alerta, crítica ou vencida — com os dias restantes, para que um operador rotacione antes de o operador ser travado no BACEN.

## Trust store

***

Cada tenant carrega os **certificados raiz X.509** nos quais o Lerian STA confia ao estabelecer o TLS mútuo com o BACEN. O Lerian STA faz o parsing do PEM, registra a **impressão digital e a janela de validade** de cada certificado e reporta um status de vencimento por certificado mais um **resumo do pool** — total, a vencer e vencidos. A **janela de a vencer** tem por padrão **30 dias** e é ajustável pelo operador com recarga a quente, para que as raízes sejam renovadas antes de a cadeia de confiança TLS quebrar.

## Retenção e TTL de protocolo

***

* **TTL de protocolo de saída** — cada protocolo de saída tem um tempo de vida limitado de relógio de parede (44 horas por padrão) para concluir o envio antes de o BACEN expirá-lo.
* **Retenção de entrada** — cada configuração de origem de entrada define por quanto tempo os seus artefatos baixados são retidos: 365 dias por padrão, configurável de 1 a 3.650 dias.

## Reconciliação e contingência

***

O Lerian STA reconcilia no grão de **uma transferência por número de protocolo do BACEN**; o número de protocolo é a **chave de idempotência** na descoberta, de modo que um arquivo nunca é processado duas vezes.

O BACEN não oferece **criação de protocolo idempotente**: recriar um protocolo duplicaria o arquivo no BACEN. Por isso, se o Lerian STA falhar entre criar um protocolo no BACEN e persisti-lo localmente, a transferência fica estacionada em um **estado local que exige que um operador o resolva** — nunca é repetida em silêncio.
