Capítulo 45 — Auditoria e Rastreabilidade
Este capítulo detalha a Arquitetura de Auditoria e Rastreabilidade da Plataforma de Relacionamento Digital com o Cidadão, descrevendo como toda alteração de dados, acesso a recursos sensíveis e decisão crítica é registra…
45.1 Objetivo do Capítulo
Este capítulo detalha a Arquitetura de Auditoria e Rastreabilidade da Plataforma de Relacionamento Digital com o Cidadão, descrevendo como toda alteração de dados, acesso a recursos sensíveis e decisão crítica é registrada, imutável e rastreável para fins de conformidade regulatória, investigação de incidentes e responsabilização.
A auditoria não é função secundária de observabilidade. É um controle de segurança crítico que responde às perguntas: "O quê foi alterado?", "Quem alterou?", "Quando?", "De onde?", "Por quê?" e "Com que resultado?".
45.2 Princípios de Auditoria
- Imutabilidade — eventos auditados não podem ser alterados ou excluídos após registro
- Não-repúdio — ator não pode negar ter executado uma ação; está registrado com identidade
- Rastreabilidade completa — cadeia de causa e efeito entre eventos relacionados preservada
- Minimização — dados pessoais em auditoria são minimizados; referências ao dado, não cópias
- Retenção governada — política de retenção por tipo de evento; exclusão após período definido
- Segregação de responsabilidades — quem registra auditoria não altera logs depois
- Performance sem bloqueio — registro de auditoria não bloqueia operações críticas
- Confidencialidade apropriada — acesso à trilha restrito por perfil; leitura de auditoria é auditada
45.3 Arquitetura de Auditoria
Evento de Negócio / Segurança
│
Identidade + Tenant + Contexto
│
Serialização (JSON + correlationId)
│
┌───┴───┐
│ │
Local RabbitMQ
(log) (async)
│ │
└───┬───┘
│
Audit Store (PostgreSQL imutável)
│
Retenção (S3 / arquivo comprimido)
│
Consulta (via Audit API)
Camada dupla: log estruturado local para troubleshooting imediato; Audit Store centralizado para conformidade e investigação.
45.4 Eventos Auditáveis por Categoria
45.4.1 Autenticação e Autorização
| Evento | Dados Registrados |
|---|---|
| Login bem-sucedido | usuário, tenant, IP, device, timestamp |
| Falha de login | tentativa, motivo (usuário não existe, senha errada, MFA falhou), IP |
| Bloqueio automático | usuário, política violada, limite atingido |
| MFA habilitado/desabilitado | usuário, quem executou, método |
| Revogação de token | token_id, sessão, motivo (logout, timeout, revogação administrativa) |
| Alteração de permissão | usuário, perfil anterior → novo, quem alterou |
45.4.2 Dados e Persistência
| Evento | Dados Registrados |
|---|---|
| Criação de registro | tipo de dado, id, tenant, quem criou, valores iniciais (resumo) |
| Alteração de registro | id, campos alterados (anterior → novo), quem alterou |
| Exclusão de registro | id, quem excluiu, motivo (quando aplicável) |
| Acesso sensível | id, quem acessou, timestamp, contexto |
| Backup iniciado/concluído | escopo, status, duração |
| Restauração de backup | qual backup, para qual ambiente, quem executou |
45.4.3 Segurança e Conformidade
| Evento | Dados Registrados |
|---|---|
| Secret rotacionado | tipo de secret, serviço afetado, timestamp |
| Certificado expirado/renovado | subject, validade anterior/nova |
| Falha de validação de segurança | tipo (CSP violation, certificate error), origem, detalhes |
| Deploy de código | commit hash, versão, quem deployou, ambiente |
| Mudança de configuração de segurança | parâmetro, valor anterior → novo, quem alterou |
45.4.4 Conformidade LGPD
| Evento | Dados Registrados |
|---|---|
| Consentimento concedido | titular, tipo, versão dos termos, canal, timestamp |
| Consentimento revogado | titular, tipo, timestamp |
| Direito do titular solicitado | tipo (acesso, exclusão, portabilidade), titular, timestamp |
| Direito do titular atendido | tipo, titular, resultado, quem executou |
| Incidente de proteção de dados | descrição, dados afetados (agregado), data descoberta, ações |
45.4.5 Operação e Suporte
| Evento | Dados Registrados |
|---|---|
| Acesso administrativo | admin, ação executada, escopo, timestamp |
| Break glass utilizado | credencial de emergência usada, ações executadas, justificativa |
| Suporte técnico accessou recursos | suporte, cliente, recursos acessados, motivo, duração |
45.5 Estrutura de Evento de Auditoria
{
"auditId": "aud-uuid",
"timestamp": "2026-07-16T10:30:00Z",
"tenantId": "tenant-uuid",
"eventType": "data.modified",
"eventCategory": "persistence",
"severity": "medium",
"subject": {
"id": "user-uuid",
"type": "user",
"name": "João Silva"
},
"resource": {
"id": "req-uuid",
"type": "request",
"name": "Solicitação de Habilitação"
},
"action": "UPDATE",
"result": "success",
"context": {
"ip": "192.168.1.100",
"userAgent": "Mozilla/5.0...",
"sessionId": "sess-uuid",
"correlationId": "corr-uuid"
},
"details": {
"fields": [
{
"name": "status",
"oldValue": "PENDING_ANALYSIS",
"newValue": "APPROVED"
}
]
},
"retentionDays": 2555
}
45.6 Audit Store — Banco de Auditoria
A Audit Store é um banco de dados separado, otimizado para escrita, com schema imutável e validação de integridade.
45.6.1 Características
- Append-only — inserts apenas, nenhum update ou delete após inserção
- Compressão — eventos históricos comprimidos e arquivados em S3
- Particionamento — por tenant e por período (mês/trimestre)
- Índices especializados — por tenant, por tipo de evento, por timestamp, por subject
- Replicação — backup contínuo, PITR habilitado
- Integridade — hash criptográfico encadeado (blockchain-like)
45.6.2 Schema
CREATE TABLE audit_events (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
audit_id UUID NOT NULL UNIQUE,
timestamp TIMESTAMP NOT NULL,
tenant_id VARCHAR NOT NULL,
event_type VARCHAR NOT NULL,
event_category VARCHAR NOT NULL,
severity VARCHAR NOT NULL,
subject_id VARCHAR,
subject_type VARCHAR,
resource_id VARCHAR,
resource_type VARCHAR,
action VARCHAR NOT NULL,
result VARCHAR NOT NULL,
ip_address VARCHAR,
correlation_id UUID,
event_json JSONB NOT NULL,
hash_value VARCHAR(64) NOT NULL, -- SHA256 do evento anterior + este
created_at TIMESTAMP NOT NULL DEFAULT NOW()
);
CREATE INDEX idx_audit_tenant_timestamp
ON audit_events (tenant_id, created_at DESC);
CREATE INDEX idx_audit_subject
ON audit_events (tenant_id, subject_id, created_at DESC);
CREATE INDEX idx_audit_event_type
ON audit_events (tenant_id, event_type, created_at DESC);
45.7 CorrelationId — Rastreamento de Cadeia
Toda requisição, evento e decisão que fluem pela plataforma são marcados com um correlationId único que permite rastrear a sequência completa de eventos relacionados.
Cidadão submete solicitação (Portal)
│ correlationId = corr-a7f2
│
API Gateway valida
│ propaga corr-a7f2
│
Request Service cria solicitação
│ propaga corr-a7f2
│
RabbitMQ publica request.created
│ propaga corr-a7f2
│
Workflow Service inicia processo
│ propaga corr-a7f2
│
Notificação enviada
│ propaga corr-a7f2
Toda ação acima registrada com correlationId = corr-a7f2
Audit Query: "todos os eventos com corr-a7f2" retorna cadeia completa
45.8 Consulta de Auditoria
45.8.1 Audit API
GET /audit/events?tenantId=...&subjectId=...&from=...&to=...
Filtros suportados:
- tenantId (obrigatório)
- subjectId (quem executou)
- resourceId (recurso afetado)
- eventType (tipo de evento)
- severity (nível)
- correlationId (cadeia de eventos)
- from/to (período)
Resposta:
{
"events": [ ... ],
"total": 1234,
"page": 0,
"pageSize": 20
}
45.8.2 Acesso Controlado
Quem pode consultar auditoria:
- AUDITOR — todas as entidades do tenant
- TENANT_ADMIN — auditoria do tenant todo
- SECURITY_OFFICER — auditoria de eventos de segurança
- Titular (LGPD) — apenas eventos que a afetam (direito ao acesso)
- Suporte técnico — sob contexto de incident ticket (auditado)
45.9 Retenção e Arquivo
45.9.1 Política de Retenção
| Tipo de Evento | Retenção |
|---|---|
| Autenticação bem-sucedida | 90 dias |
| Falha de autenticação | 1 ano |
| Alteração de dados | 3 anos |
| Exclusão de dados | 7 anos (LGPD + passivos) |
| Incidente de segurança | 7 anos |
| Consentimento (LGPD) | Duração do consentimento + 1 ano |
45.9.2 Arquivo em Frio
Eventos históricos (após 6 meses) são:
- Agregados por mês
- Comprimidos com gzip
- Assinados digitalmente
- Movidos para S3 Glacier / arquivo de longo prazo
- Índice mantido no PostgreSQL para consulta
45.10 Detecção de Anomalias
Sistema de alertas detecta padrões suspeitos:
| Anomalia | Alerta |
|---|---|
| Múltiplas falhas de login seguidas de sucesso | Credential stuffing suspeito |
| Acesso de IP não habitual | Localização ou dispositivo novo |
| Acesso fora de horário habitual | Acesso noturno fora do padrão |
| Alteração de dados em massa | Exclusão em lote suspeita |
| Acesso à auditoria por usuário sem permissão | Tentativa de cobertura |
Alertas são registrados em auditoria de segunda ordem.
45.11 Rastreabilidade de Ciclo de Vida Completo
Exemplo: Uma solicitação do cidadão João percorre toda a plataforma
1. João cria conta (IAM)
└─ Evento: user.created
└─ Dados: email, IP, device
2. João autentica (IAM)
└─ Evento: authentication.success
└─ Dados: IP, timestamp, MFA method
3. João abre solicitação (Request Service)
└─ Evento: data.created
└─ Dados: request id, formulário, documentos
4. Sistema classifica automaticamente (IA)
└─ Evento: ai.classification_executed
└─ Dados: confiança da classificação, modelo versão
5. Atendente visualiza solicitação (CRM)
└─ Evento: data.accessed
└─ Dados: quem acessou, quando, por quanto tempo
6. Analista aprova (BPM)
└─ Evento: data.modified
└─ Dados: status anterior/novo, motivo
7. Notificação enviada (Comunicação)
└─ Evento: notification.sent
└─ Dados: canal, resultado entrega
Todos os 7 eventos estão marcados com mesma correlationId
Query de auditoria retorna cadeia completa do ciclo de vida
45.12 Conformidade com Regulações
45.12.1 Lei Geral de Proteção de Dados (LGPD)
- ✓ Rastreabilidade de processamento de dados (Artigo 5, inciso XII)
- ✓ Direito de acesso (Artigo 18) — cidadão consulta o que foi processado sobre si
- ✓ Direito de portabilidade (Artigo 20) — exportação de histórico
- ✓ Direito ao esquecimento (Artigo 17) — exclusão com registro
45.12.2 Lei de Acesso à Informação (Lei 12.527/2011)
- ✓ Rastreabilidade de acesso a dados públicos
- ✓ Registro de quem acessou e quando
- ✓ Auditoria de denegações de acesso
45.12.3 Lei Brasileira de Proteção de Dados (LBPD)
- ✓ Trilha auditável de decisões de IA (Artigo 20)
- ✓ Registro de processamento por terceiros (Artigo 28)
45.13 Rastreabilidade com o Anexo III
| Item ANX-III | Atendimento |
|---|---|
| 6.3 | Auditoria completa de alterações, acessos e decisões críticas |
| 6.4 | Trilha de autorização de cada ação |
| 1.10 | Ciclo de vida completo rastreável |
45.14 Benefícios da Auditoria e Rastreabilidade
- rastreabilidade completa de quem fez o quê, quando, onde e por quê;
- conformidade com LGPD, Lei de Acesso à Informação e normas regulatórias;
- detecção rápida de anomalias e investigação de incidentes;
- não-repúdio — ator não pode negar ter executado ação;
- cadeia de causa e efeito preservada entre eventos relacionados;
- corrigibilidade — cidadão (ou administrador) acessa seu histórico de dados.
45.15 Riscos e Mitigações
| Risco | Consequência | Mitigação |
|---|---|---|
| Auditoria apagada ou alterada | Cobertura de violação | Audit Store append-only com integridade criptográfica |
| Dados pessoais em auditoria | Exposição de PII | Minimização de dados; referências ao lugar de cópias |
| Auditoria não acessível em investigação | Impossibilidade de forensics | Replicação, PITR, arquivo em S3 com acesso segregado |
| Performance degradada por logging | Bloqueio de operações críticas | Async via RabbitMQ; Audit Store otimizado para escrita |
| Acesso não autorizado à auditoria | Exposição de comportamento de usuários | RBAC rigoroso; consulta à auditoria é auditada |
45.16 Decisões Arquiteturais
| ADR | Tema |
|---|---|
| ADR-1201 | Audit Store — banco dedicado vs. tabelas no banco operacional |
| ADR-1202 | Serialização de eventos — JSON + hash vs. binário |
| ADR-1203 | Retenção de auditoria — períodos por tipo de evento |
| ADR-1204 | CorrelationId — propagação entre todas as camadas |
| ADR-1205 | Acesso à auditoria — quem pode consultar |
45.17 Rastreabilidade PRODEMGE
- [ANX-III] Bloco 6 — itens 6.3 e 6.4 cobertos conforme seção 45.13.
- [ANX-IV] — Capacidades de auditoria imutável, rastreabilidade de acesso, conformidade regulatória.
- [ANX-V] Item 2.4 — Continuidade: auditoria como evidência de conformidade e resposta a incidentes.
- [PNR] — Auditoria como controle transversal de todas as funcionalidades.
- [EDITAL] — Edital CP001/2026: plataforma com trilha auditável completa.
45.18 Próximo Capítulo
O Capítulo 46 detalha Criptografia e Controles Criptográficos — como dados em repouso e em trânsito são protegidos.
45.19 Controle de Versão
| Campo | Valor |
|---|---|
| Documento | Documento Mestre — Plataforma de Relacionamento Digital com o Cidadão |
| Capítulo | 45 — Auditoria e Rastreabilidade |
| Versão | 1.0 |
| Situação | Concluído |
| Última atualização | 16/07/2026 |
45.20 Resumo
Auditoria e rastreabilidade são pilares de conformidade, segurança e responsabilização. Cada ação na plataforma — criação, alteração, exclusão, acesso — é registrada de forma imutável com contexto completo: quem, o quê, quando, onde, por quê e com que resultado. A cadeia de causa e efeito é preservada via correlationId, permitindo rastrear jornadas completas de dados e decisões. A conformidade com LGPD, Lei de Acesso à Informação e normas de investigação é garantida pela retenção governada, minimização de dados pessoais e acesso segregado aos registros de auditoria.
Capítulo 44 — LGPD e Proteção de Dados Pessoais
Este capítulo detalha como a Plataforma de Relacionamento Digital com o Cidadão implementa a Lei Geral de Proteção de Dados (Lei 13.709/2018 — LGPD) em seus processos, tecnologia e operação.
Capítulo 46 — Criptografia e Controles Criptográficos
Este capítulo detalha a estratégia criptográfica da Plataforma de Relacionamento Digital com o Cidadão, descrevendo como dados em repouso, em trânsito e em processamento são protegidos por criptografia; como chaves cript…