Audit¶
Objetivo¶
O módulo Audit é responsável pelo registro, rastreabilidade e consulta de todos os eventos relevantes ocorridos na CoreFlow Platform.
Sua finalidade é garantir governança, conformidade, segurança e suporte à investigação de incidentes.
Todos os produtos da plataforma deverão utilizar exclusivamente este módulo para registro de auditoria.
Responsabilidades¶
O módulo deverá registrar:
- Autenticação
- Alterações cadastrais
- Inclusões
- Atualizações
- Exclusões
- Aprovações
- Cancelamentos
- Exportações
- Importações
- Alterações de permissões
- Alterações de configurações
- Eventos de segurança
- Integrações
Arquitetura¶
Audit
│
┌─────────────┼─────────────┐
│ │ │
Authentication RBAC Products
│ │ │
└─────────────┼─────────────┘
Audit Storage
Conceito¶
Toda ação relevante deverá produzir um evento de auditoria.
A auditoria nunca deverá depender do módulo que executou a ação.
Estrutura do Evento¶
Cada evento deverá conter, no mínimo:
- Identificador
- Data/Hora (UTC)
- Empresa
- Usuário
- Sessão
- Endereço IP
- User Agent
- Produto
- Módulo
- Recurso
- Operação
- Resultado
- Dados anteriores
- Dados atuais
- Origem
Operações Auditáveis¶
Obrigatoriamente registrar:
- CREATE
- UPDATE
- DELETE
- VIEW (quando aplicável)
- LOGIN
- LOGOUT
- APPROVE
- REJECT
- IMPORT
- EXPORT
Fluxo¶
sequenceDiagram
participant User
participant Product
participant Audit
participant Database
User->>Product: Executa operação
Product->>Audit: Registrar Evento
Audit->>Database: Persistir
Database-->>Audit: OK
Classificação¶
Os eventos poderão possuir níveis:
- Information
- Warning
- Critical
- Security
- Compliance
Consulta¶
O sistema deverá permitir filtros por:
- Empresa
- Usuário
- Produto
- Módulo
- Operação
- Período
- IP
- Resultado
Retenção¶
A retenção deverá ser configurável conforme:
- Política da empresa
- LGPD
- Requisitos legais
- Contrato
Integridade¶
Registros de auditoria não poderão ser alterados.
Toda tentativa de alteração deverá gerar novo evento.
APIs¶
Não haverá APIs públicas para alteração de registros.
Integrações¶
O módulo deverá integrar-se com:
- Authentication
- Users
- Companies
- RBAC
- Notifications
- Todos os Produtos
Segurança¶
Obrigatório:
- Acesso restrito
- Controle por RBAC
- Registro imutável
- Timezone UTC
- Integridade dos dados
Regras de Negócio¶
- Todo evento pertence a uma empresa.
- Todo evento possui data/hora UTC.
- Eventos não podem ser editados.
- Exclusão lógica de auditoria é proibida.
- Auditoria deve sobreviver à exclusão do registro original.
Indicadores¶
O módulo deverá permitir geração de métricas como:
- Logins por período
- Alterações por usuário
- Alterações por módulo
- Eventos críticos
- Tentativas de acesso negado
- Falhas de autenticação
Testes Obrigatórios¶
- Registro de CREATE
- Registro de UPDATE
- Registro de DELETE
- Registro de LOGIN
- Registro de LOGOUT
- Consulta por filtros
- Multiempresa
- Integridade
- Imutabilidade
Anti-patterns¶
É proibido:
- Alterar registros de auditoria
- Excluir registros
- Registrar informações sensíveis (senhas, tokens, chaves)
- Registrar eventos sem identificação do usuário quando houver autenticação
- Desabilitar auditoria em produção
Objetivo Final¶
Disponibilizar um mecanismo corporativo de auditoria completo, confiável e imutável, permitindo rastrear todas as ações relevantes realizadas na CoreFlow Platform, garantindo segurança, conformidade e governança para todos os produtos.