Este artigo faz parte do guia completo de segurança de APIs.
O que o rate limiting resolve
Limite de requisições reduz a capacidade de um atacante de testar credenciais, enumerar identificadores ou extrair dados em massa. Também protege operações caras, como relatórios e exportações, de esgotarem o serviço.
Sem esse controle, endpoints de busca e listagem viram ferramentas de coleta — e o custo cai no seu lado.
Por que só o IP não basta
Limitar por IP é fácil de contornar com proxies e endereços rotativos. Para abuso autenticado, o limite relevante é por conta e por token, porque é isso que identifica o consumidor.
O ideal é combinar camadas: por IP (para tráfego anônimo), por token (para usos autenticados) e cotas por recurso (para operações caras).
- Limite por IP para endpoints públicos.
- Limite por conta/token para endpoints autenticados.
- Cotas específicas para operações caras (relatórios, exportação).
- Respostas 429 claras, com orientação de retry.
Cuidados de implementação
Limites mal calibrados quebram o produto. É preciso distinguir tráfego legítimo de abuso, tratar picos previsíveis e informar o cliente adequadamente quando o limite é atingido.
Também vale monitorar: os logs de 429 e de comportamento anômalo ajudam a ajustar os limites e a perceber ataques antes que causem dano.
Além do rate limiting
Limites não substituem autorização. Um endpoint que devolve dados de outro usuário continua errado, mesmo com limite. O rate limiting é uma camada — importante, mas parte de um conjunto.
Perguntas frequentes
Rate limiting sozinho resolve o abuso?
Ajuda muito, mas não substitui autenticação e autorização corretas. Ele reduz a escala do abuso, não corrige falhas de acesso.