Auditoria

Para: Adm — Conferido em 2026-10-18.

A tela Auditoria mostra a trilha de tudo o que as pessoas fizeram na operação: quem, quando, qual ação, em qual objeto e com que resultado. A trilha só recebe registros novos, nunca é editada, e cada registro leva o hash do anterior. Você pode verificar a integridade da cadeia e baixar um arquivo assinado para auditoria externa.

O que é

A trilha é por operação e só de acréscimo (append-only): o banco não aceita alterar nem apagar registros. Cada registro guarda o hash SHA-256 do registro anterior, formando uma cadeia; qualquer alteração, remoção ou inserção no meio quebra a cadeia e é detectada pela verificação.

O que entra: ações das pessoas no painel (decisões de revisão, revelação de dados pessoais, criação e revogação de chaves, pedidos e votos, mudanças de regra, importações de reconciliação, exportações) e as recusas (refused:step_up_required, por exemplo). Nunca entram dados pessoais, segredos nem o texto livre dos motivos.

Quem vê o quê:

Papel O que a tela mostra
Administrador do tenant, Financeiro, Auditor A trilha inteira da operação, a verificação de integridade e a exportação assinada.
Revisor Só as suas próprias ações, com o aviso "Você vê apenas as suas próprias ações."

O recorte é feito no servidor, não na tela.

Quando usar

  • Para saber quem decidiu um saque, revelou um dado ou revogou uma chave.
  • Para atender a uma auditoria interna ou externa com um arquivo assinado.
  • Para provar que a trilha não foi alterada.
  • Para achar o trace_id de uma operação e informar ao suporte.

Como fazer

Buscar registros

  1. Abra Auditoria no menu Administração.
  2. Use os filtros, todos opcionais e de até 128 caracteres:
    • Quem: o identificador (UUID) do usuário. Não aparece para o Revisor.
    • Ação: começa com (por exemplo key.).
    • Objeto: contém.
    • Resultado: começa com (por exemplo refused).
    • De e Até: data e hora no horário de Brasília.
  3. Clique em Filtrar.

A tabela lista, da mais nova para a mais antiga, 100 registros por página (use Mais antigos para continuar): # (posição na cadeia), quando, quem, ação, objeto, resultado e trace_id. O resultado vem com selo verde para ok e allow e vermelho para os demais, sempre acompanhado do texto.

Ações que você vai encontrar com frequência:

Ação O que registra
review.vote Voto em saque ou depósito em revisão.
pii.reveal Revelação de dados pessoais.
key.reveal, key.revoke Revelação do segredo e revogação de chave.
ip.remove Remoção de IP da lista.
request.propose, request.vote, request.cancel, request.execute Pedidos com aprovação: proposta, voto, cancelamento e vigência.
webhooks.secret.rotate, webhooks.dlq.redeliver, webhooks.dlq.resolve Rotação de segredo e tratamento da DLQ.
test_charge.create, test_charge.simulate_pay Cobrança de teste.
rules.emergency, rules.list.add, rules.vip.revoke Emergência, lista e VIP.
recon.import, recon.export, recon.threshold Reconciliação e limiar de caixa.
report.export, report.export_pii.download Exportação de relatórios.
audit.search, audit.verify, audit.export Uso da própria auditoria.

A lista não é exaustiva. O resultado traz o desfecho (ok, ok:approve, failed, refused:<motivo>).

Verificar a integridade

Em Integridade e exportação (só para quem vê a trilha inteira), clique em Verificar integridade da cadeia. O Dracma recalcula a cadeia inteira da operação, do primeiro registro à ponta, e responde:

  • "Cadeia íntegra: N registros conferidos, ponta #P." Está tudo certo.
  • "Cadeia QUEBRADA no registro #n (motivo); N registros conferidos antes da quebra. Acione a segurança." Algo foi alterado.

Motivos da quebra:

Motivo na tela Significa
registro faltando na sequência Há um buraco na numeração.
o elo com o registro anterior não confere Um registro aponta para um anterior diferente.
o conteúdo do registro foi alterado O hash do registro não bate com o conteúdo.
a ponta da cadeia não confere com o registrado O último registro difere do que o Dracma guardou.
registros finais foram removidos A cadeia está mais curta que o registrado.

Uma cadeia quebrada é um incidente de segurança: guarde a tela e o trace_id e acione o suporte imediatamente.

Exportar com assinatura

  1. Em Exportar auditoria assinada, preencha Exportar de e Exportar até (horário de Brasília; ambos opcionais).
  2. Clique em Exportar auditoria assinada. É preciso confirmação recente. Quem exporta: Administrador, Financeiro e Auditor.
  3. O navegador baixa um arquivo .json e a tela confirma "Arquivo gerado: …".

O arquivo é um envelope com o conteúdo (payload) e a assinatura Ed25519 (signature). O conteúdo traz o trecho contínuo da cadeia no período, com os hashes de cada registro, e a ponta da cadeia no momento da exportação. Isso permite que uma auditoria externa verifique o arquivo sem acesso ao seu sistema: confira a assinatura com a chave pública e recalcule os hashes encadeados.

A chave pública de verificação aparece abaixo, com o identificador. Use Baixar chave pública (PEM) ou Copiar chave pública. Para conferir um arquivo, verifique a assinatura Ed25519 do campo signature sobre o payload com essa chave.

Limites:

  • até 10 000 registros por exportação; para períodos maiores, estreite o intervalo;
  • a exportação também é registrada na trilha (audit.export): sem registro, não há arquivo.

Não disponível

Em ambientes sem chave de assinatura configurada, a tela mostra "Exportação assinada indisponível neste ambiente: a chave de assinatura não está configurada." e "Chave pública indisponível neste ambiente." A busca e a verificação continuam funcionando.

Exemplos

Quem revogou a chave key_live_… ontem à tarde? Filtre por Ação key.revoke, com De 17/10/2026 12:00 e Até 17/10/2026 18:00 (horário de Brasília). A linha mostra o #, o horário, o identificador de quem revogou, o objeto (o key_id), o resultado ok e o trace_id.

Linha de exemplo, com dados fictícios:

# Quando Quem Ação Objeto Resultado trace_id
1842 17/10/2026 15:07 3f9a…c21 key.revoke key_live_9d1c… ok 0a1b2c3d4e5f60718293a4b5c6d7e8f9

Para provar a uma auditoria que ninguém mexeu nos registros do mês: clique em Verificar integridade da cadeia, exporte o mês com Exportar auditoria assinada e entregue o arquivo e a chave pública.

Erros e casos de borda

Mensagem Causa O que fazer
"O filtro Quem deve ser o identificador (UUID) do usuário." Quem não é um UUID. Cole o identificador.
"Data inválida: use dia e hora existentes, no horário de Brasília." Data inexistente. Corrija.
"Cada filtro aceita até 128 caracteres." Filtro longo. Encurte.
"Página inválida: recomece a busca." Cursor de paginação inválido. Filtre de novo.
"O período está invertido: "De" deve ser anterior a "Até"." Datas trocadas. Corrija.
"Período grande demais: a exportação aceita até 10 000 registros. Estreite o período (De/Até)." Exportação acima do limite. Estreite o período.
"Sem permissão para exportar a auditoria." Seu papel não exporta. Peça a um Administrador, Financeiro ou Auditor.
"Sem permissão para verificar a integridade da trilha." Seu papel vê só as próprias ações. Peça a quem vê a trilha inteira.
"Não foi possível verificar a cadeia agora. Tente de novo; se persistir, acione o suporte com o trace_id." Falha ao verificar. Repita; se persistir, fale com o suporte.
"Confirme com o fator forte para concluir." step_up_required ao exportar. Use Confirmar identidade agora.

Casos de borda:

  • Revisor não vê as ações dos outros. É o comportamento esperado; peça a um Administrador, Financeiro ou Auditor.
  • Cadeia por operação. Cada operação tem a própria cadeia; a verificação e a exportação valem para a operação escolhida.
  • Ações da equipe do Dracma. O uso de acesso de emergência por essa equipe gera o alerta "Break-glass do staff", configurável em Alertas e e-mails; o alerta não tem fonte de dados ativa hoje (veja a página).

Veja também