Governança de Dados
Quando um auditor pergunta "quais bases contêm dados pessoais e quem responde por elas?", a resposta não pode ser uma caça ao tesouro por planilhas. Com a Governança de Dados do DATTA, cada dataset do Knowledge Catalog recebe um owner, um steward e uma classificação de sensibilidade — atribuídos em uma única tela, com trilha de auditoria de quem mudou o quê e quando. É a base para compliance LGPD/GDPR, para responsabilidade explícita por produto de dados e para relatórios de sensibilidade em poucos cliques.
O que você habilita:
- Compliance LGPD/GDPR: saber quais datasets contêm dados pessoais e quem é o responsável por eles.
- Data mesh: um dono de produto de dados explícito por dataset.
- Regras por classificação (futuro): políticas do tipo "dados pessoais só para o DPO", sem lista de acesso caso a caso.
- Auditoria: trilha completa de quem atribuiu ou mudou o quê e quando.
Níveis de classificação
Hierarquia, do mais permissivo ao mais restrito:
| Nível | Sensível? | Quando usar |
|---|---|---|
| PUBLIC | não | Dado público (legislação, normas abertas, documentação oficial). |
| INTERNAL | não | Uso interno corporativo. Padrão para datasets ainda não classificados. |
| CONFIDENTIAL | sim | Sigiloso — restrito a poucas funções (financeiro, jurídico). |
| RESTRICTED | sim | Acesso por lista explícita (alta gestão, NDA dedicada). |
| PII | sim + pessoal | Contém dados pessoais — proteção máxima (LGPD/GDPR). |
Como atribuir governança a um dataset
- Abra a página Governança de Dados (
/governanca.html). - Digite o Dataset ID — por exemplo
neo4j:processos:Documentoouopensearch:datta_processos_chunks. - Clique em Carregar: a governança atual do dataset aparece na tela.
- Edite os três campos:
- Owner — usuário responsável pelo dataset;
- Steward — usuário steward de governança;
- Classificação — lista com os 5 níveis.
- Clique em Salvar.
Para desfazer, a plataforma também permite remover a governança do dataset: ele volta ao padrão INTERNAL, sem owner nem steward. A operação está disponível na referência de API, junto com a leitura, a atribuição e a listagem de datasets por nível de classificação.
Classificação automática (IA)
O botão Classificar via IA dispara a classificação em duas etapas:
- Heurística de dados pessoais: nomes de coluna com termos clássicos (
cpf,cnpj,email,telefone,ssn,address, ...) classificam o dataset IMEDIATAMENTE como PII — sem gastar chamada de IA. - IA como segunda opinião: se nenhum termo bate, o modelo de linguagem (Gemini por padrão, modelo local em ambientes sem internet) recebe os metadados do dataset — nome, colunas, tipo e amostras — e devolve o nível.
A classificação automática não é definitiva: você pode sobrescrevê-la manualmente. O resultado é sempre gravado, preservando o owner e o steward atuais, e a interface orienta a salvar para confirmar.
Exemplo prático — preparando um relatório LGPD
- O DPO pede o inventário de bases com dados pessoais. Abra a página Governança de Dados.
- Carregue
neo4j:processos:Documentocom Carregar. O dataset está como INTERNAL e sem owner. - Clique em Classificar via IA: a heurística encontra a coluna
cpfe sugere PII na hora, sem consultar o modelo. - Preencha Owner com
maria@suaorge Steward comcarlos@suaorg, confirme a classificação PII e clique em Salvar. - Repita para os demais datasets do contexto. A listagem de todos os datasets de um nível (por exemplo, todos os PII) está disponível pela referência de API — pronta para alimentar o relatório.
- Cada atribuição fica auditada: quem atribuiu, quando e o que mudou.
Onde a governança fica guardada
Os atributos ficam no próprio dataset do Knowledge Catalog, no banco de grafos datta-datacatalog, como propriedades do nó (:Dataset {id, ...}):
owner(texto)steward(texto)classificationLevel(texto — um dos 5 níveis)assignedAt(data/hora ISO 8601)assignedBy(texto — quem fez a atribuição)
Uma migração idempotente cria os índices de owner, steward e classificationLevel, para que as consultas por dono, por steward e por nível de classificação respondam rápido mesmo com muitos datasets.
Para não ir ao grafo a cada leitura, a governança é servida por um cache em duas camadas — memória do próprio serviço e cache distribuído da plataforma, com TTL de 30 minutos — tendo o grafo como fonte da verdade. Toda gravação (atribuição ou remoção) invalida o cache na hora, então a tela nunca mostra um dono desatualizado.
Auditoria
Toda mudança gera um evento de auditoria, gravado como (:AuditEvent) no grafo:
OWNERSHIP_ASSIGNED— quando o owner ou o steward muda.OWNERSHIP_ASSIGNED_RECLASSIFIED— quando a classificação também mudou.OWNERSHIP_REMOVED— quando a governança é removida.
Quem pode usar
O acesso segue as permissões do catálogo: a interface esconde o que você não pode fazer, e a regra vale também no servidor — sem a permissão, a ação é recusada com mensagem em português e a negativa fica auditada.
O mapeamento abaixo é a sugestão padrão de perfis — ajuste-o às roles da sua organização no guia de roles e permissões.
| Perfil | Permissões |
|---|---|
viewer | CATALOG_VIEW |
analista | CATALOG_VIEW, CATALOG_EDIT |
steward | CATALOG_VIEW, CATALOG_EDIT, DATASET_ASSIGN_OWNER (atribuir owner/steward/classificação) |
dpo | CATALOG_VIEW, DATASET_ASSIGN_OWNER, DATASET_RECLASSIFY (disparar a classificação automática — ação sensível) |
admin | tudo + CATALOG_ADMIN |
Limitações conhecidas
- Sem políticas de acesso complexas por atributo (Casbin/OPA): usamos uma lista simples de níveis. É uma decisão consciente do MVP, com expansão futura se houver justificativa.
- Sem aprovação em duas etapas para mudança de classificação — fica para o futuro.
- Amostras de dados na classificação automática são melhor-esforço: se a amostragem falhar, a análise roda só com os nomes de coluna. A heurística de dados pessoais continua funcionando.
Roadmap
- Exportação para ferramentas externas de privacidade e governança (Privacera, BigID, Collibra).
- Edição de governança integrada ao Catálogo de Dados (
screens/catalogo.html) — hoje a página é dedicada. - Notificação automática ao mudar a classificação (por exemplo, avisar o canal do DPO).
- Fluxo de aprovação para rebaixar PII para PUBLIC.