O que é a limitação de taxa para o Firewall de Aplicativo Web no Gateway de Aplicativo?
A limitação de taxa do Firewall de Aplicativo Web no Gateway de Aplicativo permite que você detecte e bloqueie níveis de tráfego anormalmente altos destinados ao seu aplicativo. Ao usar a limitação de taxa no WAF_v2 do Gateway de Aplicativo, você pode mitigar vários tipos de ataques de negação de serviço, proteger contra clientes que foram acidentalmente configurados de forma incorreta para enviar grandes volumes de solicitações em um curto período de tempo ou controlar as taxas de tráfego para o site a partir de regiões geográficas específicas.
Políticas de limitação de taxas
A limitação de taxa é configurada usando regras personalizadas do WAF em uma política.
Observação
As regras de limite de taxa só têm suporte nos Firewalls de Aplicativo Web que executam o mecanismo WAF mais recente. Para garantir que você esteja usando o mecanismo mais recente, selecione CRS 3.2 para o conjunto de regras padrão.
Ao configurar uma regra de limite de taxa, você deve especificar o limite: o número de solicitações permitidas dentro do período de tempo especificado. A limitação de taxa no WAF_v2 do Gateway de Aplicativo usa um algoritmo de janela deslizante para determinar quando o tráfego ultrapassou o limite e precisa ser descartado. Durante a primeira janela em que o limite da regra é ultrapassado, qualquer tráfego adicional que corresponda à regra de limite de taxa é descartado. A partir da segunda janela, o tráfego até o limite dentro da janela configurada é permitido, produzindo um efeito de limitação.
Você também deve especificar uma condição de correspondência, que informa ao WAF quando ativar o limite de taxa. Você pode configurar várias regras de limite de taxa que correspondam a diferentes variáveis e caminhos em sua política.
O WAF_v2 do Gateway de Aplicativo também apresenta o GroupByUserSession, que deve ser configurado. O GroupByUserSession especifica como as solicitações são agrupadas e contadas para uma regra de limite de taxa correspondente.
As três GroupByVariables a seguir estão disponíveis no momento:
- ClientAddr: essa é a configuração padrão e significa que cada limite de taxa e mitigação se aplica independentemente a cada endereço IP de origem exclusivo.
- GeoLocation: o tráfego é agrupado por sua localização geográfica com base em uma correspondência geográfica no endereço IP do cliente. Portanto, para uma regra de limite de taxa, o tráfego da mesma região geográfica é agrupado.
- None: todo o tráfego é agrupado e contado em relação ao limite da regra de limite de taxa. Quando o limite é ultrapassado, a ação é acionada contra todo o tráfego que corresponde à regra e não mantém contadores independentes para cada endereço IP ou região geográfica do cliente. Recomenda-se usar None com condições de correspondência específicas, como uma página de entrada ou uma lista de Usuários-Agentes suspeitos.
Detalhes de limitação de taxa
Os limites de taxa configurados são contados e rastreados de forma independente para cada ponto de extremidade ao qual a política do Firewall de Aplicativo Web está anexada. Por exemplo, uma única política WAF anexada a cinco ouvintes diferentes mantém contadores independentes e aplicação de limites para cada um dos ouvintes.
Os limites de limite de taxa nem sempre são aplicados exatamente como definidos, portanto, não devem ser usados para o controle de granularidade fina do tráfego de aplicativos. Em vez disso, é recomendado para mitigar as taxas anômalas de tráfego e manter a disponibilidade dos aplicativos.
O algoritmo de janela deslizante bloqueia todo o tráfego correspondente para a primeira janela em que o limite é excedido e, em seguida, limita o tráfego nas janelas futuras. Tenha cuidado ao definir limites para configurar regras de correspondência ampla com GeoLocation ou None como GroupByVariables. Limites configurados incorretamente podem levar a interrupções frequentes do tráfego correspondente.