Segurança de Arquitetura
Checklist de referência para decisões arquiteturais. Antes de considerar a arquitetura consolidada, verifique cada regra aplicável ao desenho ou decisão. Regra violada = corrigir ou documentar explicitamente por que não se aplica ao contexto.
1. Governança, Risco e Conformidade
Análise de Requisitos
- Identifique o objetivo de negócio da arquitetura
- Mapeie riscos regulatórios: dados sujeitos a LGPD/GDPR, BACEN, PCI?
- Identifique o apetite de risco do sistema
Classificação da Informação
- Defina a classificação das informações criadas/consumidas no projeto
- Inventarie e classifique os ativos de dados processados e armazenados
Threat Modeling (STRIDE + DREAD)
- Identifique e priorize ameaças ANTES da implementação
- Crie DFD (Diagrama de Fluxo de Dados) detalhando: processos (APIs, servers, lambdas), fluxo de dados (HTTPS, SQL), armazenamento (bancos, buckets), limites de confiança (VPCs)
- Para cada componente do DFD, analise as 6 categorias STRIDE:
- Spoofing: alguém consegue se passar por outro usuário/sistema?
- Tampering: dados podem ser alterados em trânsito ou no banco?
- Repudiation: usuário pode negar ter realizado ação crítica sem provas?
- Information Disclosure: mensagens de erro vazam dados? dados sensíveis em logs ou sem criptografia?
- Denial of Service: aplicação é escalável? endpoints podem ser sobrecarregados?
- Elevation of Privilege: usuário comum consegue executar ações de admin?
- Defina contramedidas para cada ameaça baseadas no risco (Crítico, Alto, Médio)
Governança
- Defina políticas de segurança e ownership (data owner, system owner, product owner, security champions)
- Gestão de segurança da informação em contratos com terceiros (due diligence, SLAs)
- Controles de segregação de funções (SoD)
- Defina RTO e RPO e requisitos de continuidade
2. Security By Design e Zero Trust
Gestão de Identidade e Acesso
- Defina IdP para SSO (Azure AD, Okta, IAM OCI, etc.)
- Exija MFA para acessos admin, remotos e processos críticos
- Siga princípio do menor privilégio (PoLP) em toda a arquitetura
- Use RBAC e/ou ABAC para controle de acesso
- Gestão de sessão segura: timeouts, refresh tokens, revoke
- Segregue contas (usuários vs admins)
- Use cofre de credenciais para acessos privilegiados
- Provisionamento/desprovisionamento automatizado e auditável
Zero Trust
- Macro-segmentação: segrede redes (Produção, Dev, QA)
- Micro-segmentação: isole workloads
- Implemente WAF para aplicações web
- Implemente Anti-DDoS
- Priorize ZTNA sobre VPN tradicional para acesso remoto
- Comunicação SEMPRE autenticada e criptografada
- Defina hardening e baseline de segurança
3. DevSecOps
Privacy by Design
- Garanta acesso apenas aos dados necessários (data minimization)
- Anonimize dados em ambientes de dev e homologação
- Implemente DLP para dados sensíveis
- Defina Data Retention Policy
- Mapeie Data Flow
Segurança na Esteira CI/CD
- Credenciais NUNCA hardcoded no código — use cofre de segredos
- Integre SAST no commit/pull request
- Integre SCA (análise de bibliotecas terceiras)
- Automatize DAST no ambiente de homologação
- Defina Secure Coding Standards e processo de code review
- APIs com OAuth2.0/OIDC, rate limiting, schema validation, API Gateway
Ambientes
- Dev/Homolog/Prod isolados com controles de rede e IAM
- Dados de produção NÃO em dev/homolog — use dados mascarados ou fakes
4. Operações, Monitoramento e Resposta
Criptografia
- TLS 1.2 ou superior para TODA comunicação (interna e externa)
- Bancos de dados, storages e backups criptografados
Logs e Monitoramento
- Capture eventos de autenticação (sucesso e falha)
- Capture alterações de privilégio
- Capture acesso a dados sensíveis
Vulnerabilidades e Patches
- Arquitetura deve suportar scans de vulnerabilidade
- Defina SLAs para aplicação de correções
Continuidade e Resposta a Incidentes
- Backup 3-2-1 com testes de restauração periódicos
- Arquitetura deve permitir isolamento rápido de componentes comprometidos
- Redundância e alta disponibilidade validadas
- Testes regulares de failover e restauração
5. Verificação Final
- Pentest (Black/Grey/White Box) antes do Go-Live
- Em cloud, inclua testes de misconfiguration e escalonamento IAM
- Documente arquitetura, políticas e decisões de risco
- Defina KPIs e KRIs de segurança
- Dashboards para tomada de decisão
- Auditorias e verificações periódicas