Trust · Segurança
Controles técnicos: o que roda em produção
Cada item desta página existe em configuração versionada ou em documento público do repositório — inclusive o item que ainda está em implantação.
Criptografia em trânsito
TLS via Let’s Encrypt em todos os subdomínios, com HSTS (incluindo subdomínios e preload). Não há endpoint de produto servido em HTTP.
Isolamento por organização (RLS)
O isolamento entre clientes não depende só do código da aplicação: é imposto por Row-Level Security no Postgres. O runtime usa uma identidade de banco sem privilégio de owner; sem o contexto da organização definido na transação, nenhuma linha de dado de tenant é visível. Um teste E2E tenta vazar dados entre duas organizações por seis vetores (listagem, acesso direto por ID, update cross-org, insert forjado, tabelas de dois níveis e acesso sem contexto) e falha o build se qualquer vetor vazar. O modelo completo está no SECURITY.md público do repositório.
Headers de segurança
Aplicados no nginx, em configuração versionada no repositório:
- Strict-Transport-Security (HSTS com preload)
- Content-Security-Policy
- X-Content-Type-Options: nosniff
- X-Frame-Options: DENY
- Referrer-Policy: strict-origin-when-cross-origin
- Permissions-Policy (câmera, microfone, geolocalização e afins negados)
Outros controles
Senhas com hash scrypt e sessões em cookie httpOnly/secure; rate limit de login; API keys armazenadas apenas como SHA-256; VPS com SSH somente por chave, fail2ban, UFW e atualizações automáticas; backup diário. O detalhe está em /seguranca.
O que ainda não está pronto
MFA para superadmin está em implantação (registrado como dívida técnica TD-033) — listamos porque um trust center que só mostra o que está pronto não é um trust center. Encontrou algo além disso? security@genopt.ai, regras em /trust/bug-bounty.