ADR-0002 - Security Headers e CSP no Edge¶
Status: Proposto
Data: 2026-03-08
1. Contexto¶
O hardening HTTP atual está parcialmente delegado ao edge e não possui baseline integral versionado para todos os headers de proteção.
Risco principal: - aumento de superfície para XSS/clickjacking e vazamento de contexto de navegação; - inconsistência entre ambientes (staging/prod).
2. Decisão¶
Centralizar no edge (Cloudflare/proxy) a política obrigatória de security headers para web e api, incluindo CSP para web.
Headers mínimos obrigatórios:
- Strict-Transport-Security
- X-Content-Type-Options
- Referrer-Policy
- Permissions-Policy
- X-Frame-Options (ou frame-ancestors 'none')
- Content-Security-Policy (web)
3. Alternativas consideradas¶
-
Configurar headers apenas no backend/web app
Rejeitada por menor governança no perímetro e risco de divergência por runtime. -
Aplicar headers parcialmente (somente HSTS e nosniff)
Rejeitada por cobertura insuficiente para proteção de browser.
4. Consequências¶
Positivas: - baseline uniforme entre serviços e ambientes; - mitigação adicional para XSS, clickjacking e exfiltração por política de navegador; - política auditável e versionada.
Custos: - necessidade de ajuste fino de CSP para evitar bloqueio de recursos legítimos; - operação de rollout/rollback no edge.
5. Plano de migração¶
- Aplicar baseline em staging.
- Validar fluxos críticos web (login, dashboard, upload, OAuth callback).
- Promover para produção em janela controlada.
- Monitorar erros de frontend e violações CSP.
Critérios de aceite:
- headers obrigatórios presentes via curl -I em web e api;
- CSP ativa no domínio web;
- ausência de regressão funcional crítica após rollout.