Modelo de segurança¶
| Preocupação | Como o Tenax trata |
|---|---|
| Dados em repouso | Criptografia age no cliente de cada objeto de dados, para destinatários que você controla. O bucket e o provedor dele nunca veem texto em claro. |
| Chaves | A identidade de backup (chave privada) é lida apenas pelos Jobs restorer. Guarde uma cópia offline: sem ela nada pode ser restaurado. Uma chave de catálogo separada permite que o console leia inventários e prévias mascaradas, mas não dumps nem WAL (ADR 0009). |
| Acesso ao banco | Um usuário de privilégio mínimo por banco, nunca um administrador: ele lê os dados para os dumps e replica para o stream (Usuários do banco). |
| Acesso ao Kubernetes | Leitura dos próprios recursos do Tenax em todo o cluster; nos namespaces de alvo, leitura apenas dos secrets tenax-*. Os pods rodam como não root, com sistema de arquivos raiz somente leitura e sem capabilities. |
| Console e API | Verificação do JWT do Cloudflare Access, quatro papéis (viewer, operator, restorer, restorer-admin), escopos opcionais por org/projeto e um log de auditoria de cada escrita e cada consulta. As requisições são validadas contra o documento OpenAPI. |
| Sandboxes | Namespace próprio, uma NetworkPolicy, credenciais geradas e um TTL. Expostos apenas pelo Cloudflare Tunnel atrás do Access, quando você ativa. |
| Secrets em logs | Nunca são registrados: o logger oculta senhas, tokens, identidades e cabeçalhos de autorização. |
A revisão completa, incluindo os itens em aberto, está em Revisão de segurança.