O API Security Checklist é um roteiro técnico e acionável para proteger endpoints em todo o ciclo de vida. Este guia cobre desde o inventário e autenticação moderna (OAuth2/OIDC) até a mitigação de ataques BOLA, validação de payloads e segurança distribuída na Global Infrastructure.
Este checklist foi desenhado para uso em auditorias, revisões de Pull Requests (PRs) e playbooks de incidentes — ideal para engenheiros de software, equipes DevSecOps e gestores de segurança.
1. Design e Arquitetura (Security by Design)
A segurança deve ser nativa, não um “add-on” posterior. O design define a superfície de ataque da sua aplicação.
- Inventário Ativo e Discovery: Todos os endpoints estão documentados via OpenAPI/Swagger e sincronizados?
- Ação: Habilite o API Discovery para identificar Shadow APIs e exportar specs automaticamente.
- Classificação de Dados: Campos PII (dados pessoais) e financeiros estão tagueados?
- Ação: Aplique máscaras de dados em logs e tagueie esquemas com níveis de sensibilidade.
- Minimização de Resposta (Anti-Overfetching): A API retorna apenas o necessário?
- Ação: Implemente restrições de campos (projection fields) para evitar a exposição excessiva de dados no payload.
- Arquitetura Zero Trust: Cada requisição é validada independentemente da origem?
- Ação: Valide o contexto (tokens e origem) antes de processar no backend.
2. Autenticação e Gestão de Identidade
A autenticação garante que a entidade é quem diz ser. Use padrões de mercado consolidados.
- Padrões Modernos (OAuth 2.0 / OIDC): Utiliza Authorization Code para usuários e Client Credentials para serviços?
- Segurança de Tokens (JWT):
- Algoritmo: Utiliza assinaturas fortes como RS256 ou ES256 (assimétricos)?
- Expiração (exp): O tempo de vida do access token é curto (minutos)?
- Claims: Valida obrigatoriamente
aud(audience) eiss(issuer)?
- MFA Adaptativo: Implementado para operações críticas ou logins administrativos?
Exemplo de Validação de Token (Pseudocódigo):
// Validação rigorosa de JWT no middlewaretoken = extract_bearer_token(request.headers.Authorization)claims = verify_signature_and_decode(token, public_key)
if claims.exp < now() or claims.iss != EXPECTED_ISS: reject 401 Unauthorized
if EXPECTED_AUD not in claims.aud: reject 401 Unauthorized3. Autorização e Controle de Acesso (Prevenção de BOLA)
Autorização define o que a identidade pode fazer. A falha aqui é a causa principal de vazamentos massivos.
- Validação de Propriedade (Anti-BOLA): O sistema verifica se o
user_iddo token tem direito sobre oresource_idsolicitado?- Ação: Nunca confie apenas no ID enviado na URL; filtre a query do banco de dados pelo dono do recurso.
- Menor Privilégio (Scopes): Os tokens possuem escopos limitados ao estritamente necessário?
- Autorização na infraestrutura distribuída: A pré-validação de escopos ocorre na plataforma de computação global?
4. Proteção da Camada de Transporte e TLS
- TLS Obrigatório: Uso de TLS 1.2 (mínimo) ou TLS 1.3 em 100% do tráfego.
- HSTS (Strict-Transport-Security): Configurado para impedir ataques de downgrade.
- mTLS (Mutual TLS): Implementado para comunicações críticas service-to-service no data center.
5. Integridade e Validação de Payload
- Validação de Contrato (Schema): O Web Application Firewall rejeita payloads que não seguem o JSON Schema?
- Sanitização de Input: Proteção ativa contra SQLi, Command Injection e XSS através de queries parametrizadas.
- GraphQL Security: Limites de profundidade (depth) e complexidade de queries implementados?
Exemplo de JSON Schema para Validação de Pedidos:
{ "type": "object", "properties": { "orderId": { "type": "string", "pattern": "^[A-Za-z0-9\\-]{8,}$" }, "quantity": { "type": "integer", "minimum": 1 } }, "required": ["orderId", "quantity"]}6. Disponibilidade, Resiliência e Performance
Proteja sua infraestrutura contra abusos automatizados e picos de tráfego.
- Rate Limiting Granular: Políticas aplicadas por IP, Usuário e Rota Crítica.
- Gestão de Bots: Análise comportamental na Global Infrastructure para bloquear scraping e credential stuffing.
- Throttling Adaptativo: O sistema reduz a velocidade (slow down) antes de bloquear totalmente (block).
7. Monitoramento, Logging e Resposta
- Logs Estruturados (JSON): Logs contêm metadados técnicos (request_id, latency_ms) sem expor PII ou tokens.
- Observabilidade em Tempo Real: Dashboards que mostram taxas de erro 4XX/5XX e tentativas de enumeração de IDs.
- Playbook de Incidentes: Passos claros de contenção e recuperação específicos para falhas de API.
Como Implementar este Checklist com a Azion?
A Azion permite mover a execução deste checklist para a estrutura global, otimizando a performance e a segurança. Entenda mais sobre a diferença entre API Gateway e API Security para escolher a arquitetura correta.
- WAF e API Protection: Automatize a validação de esquemas e bloqueie ataques do OWASP API Top 10 na Infraestrutura Global da Azion.
- Serverless Functions: Execute validação de JWT e autorização personalizada usando computação serverless para reduzir a carga no origin.
- Real-Time Metrics: Monitore a saúde das suas APIs com visibilidade total de erros e tentativas de ataque em tempo real.