Pollers
Quando
SCHEDULER_ENABLED é true, o scheduler roda o poller de status de saída. O poller se autoenfileira com um backoff indexado por estado.
O Lerian STA mantém todas as credenciais de uma instituição em um único orçamento de 10 transferências de arquivo simultâneas e 10 comandos por minuto, que a rotação de senha compartilha. Ele reserva 20 consultas por minuto para a descoberta de entrada por padrão.
Credenciais
Cada credencial é uma senha de operador do BACEN. O Lerian STA a identifica por código da instituição e ID do operador. O Lerian STA a armazena criptografada com criptografia envelope. Os operadores podem criar, atualizar, testar a conectividade de, rotacionar e revogar uma credencial. Uma atualização altera apenas o ID do operador ou a descrição.
Qual credencial uma transferência usa
Uma requisição de criação de transferência seleciona sua credencial do BACEN de uma de três formas. O Lerian STA aplica a primeira que a requisição carrega:credentialId: o Lerian STA usa essa credencial.institutionCodesemcredentialId: o Lerian STA usa a única credencial não revogada dessa instituição.- Nenhum dos dois campos: o Lerian STA usa a única credencial não revogada que tem.
201 carrega o credentialId que o Lerian STA usou. Para deixar um campo sem valor, omita-o ou envie null. Uma string vazia retorna 400 com STA-0014.
Um
409 durante uma rotação de senha não é permanente. Repita a mesma requisição após um backoff.
Rotação de senha
A rotação é um protocolo de três fases que mantém a senha antiga e a nova até o BACEN confirmar uma delas:
- Preparar a nova senha localmente.
- Alterá-la no BACEN.
- Promovê-la localmente.
CREDENTIALS_RECOVERY_ON_BOOT é true, e em cada varredura de credenciais quando SCHEDULER_ENABLED é true. Se o BACEN não aceita nem a senha antiga nem a nova, o Lerian STA trava a credencial em um estado de erro para uma redefinição manual de credencial.
Monitoramento de expiração de senha
O BACEN exige trocas periódicas de senha. O Lerian STA rastreia a expiração informada pelo BACEN de cada credencial por meio de um read-through cache. Ele projeta uma faixa de saúde com os dias restantes. As faixas são healthy acima de 15 dias, warning de 6 a 15, critical de 1 a 5 e expired em 0 ou menos. O operador pode então rotacionar a senha antes que o BACEN o bloqueie.
Retenção e TTL de protocolo
- TTL de protocolo de saída. Cada transferência de saída tem um tempo de vida em tempo real, contado a partir do momento em que o BACEN atribui seu protocolo. O padrão é 44 horas (
TRANSFER_TTL_HOURS). - Transferências canceladas e inconsistentes. Quando
SCHEDULER_ENABLEDétrue, o Lerian STA as exclui quando a última mudança de estado tem mais de 7 dias (SCHEDULER_QUARANTINE_RETENTION_DAYS). - Retenção de entrada. Uma política de ciclo de vida no bucket controla por quanto tempo os arquivos de entrada permanecem.
Conciliação e contingência
O Lerian STA concilia na granularidade de uma transferência por número de protocolo do BACEN. Na descoberta, o número de protocolo é a chave de idempotência: um protocolo já registrado não cria uma segunda transferência. O BACEN não oferece criação de protocolo idempotente. Uma segunda criação pode duplicar o arquivo no BACEN. Quando uma transferência tem uma marca persistente de tentativa de criação, mas não tem número de protocolo, o Lerian STA a coloca em Criação de protocolo não confirmada. Um operador deve conciliar essa tentativa. O Lerian STA não repete a criação marcada.

