Instale o Azion Bot Manager Lite

Azion Bot Manager Lite é uma integração serverless disponível no Marketplace da Azion. Esta integração foi construída com base em uma function no Firewall que analisa as requisições recebidas e atribui um score com base em um conjunto de regras predefinidas. Se a pontuação é igual ou excede o limite predeterminado, a integração executa a ação definida. Caso contrário, a requisição é processada (allow é a ação padrão). As ações disponíveis para Bot Manager Lite são: allow, deny, drop, redirect, custom_html, random_delay e hold_connection.

Essa integração permite a detecção de tráfego suspeito e bots maliciosos, facilitando a implementação de medidas preventivas contra atividades maliciosas, como preenchimento de credenciais, varredura de vulnerabilidades e raspagem de sites (web scrapping). O Bot Manager Lite usa um conjunto de regras predefinidas e Reputation Intelligence para analisar o comportamento dos dados recebidos.


Obtenha a integração

Para usar o Bot Manager Lite:

  1. Acesse o Azion Console > Marketplace.
  2. Na página inicial do Marketplace, selecione o card correspondente à integração Azion Bot Manager Lite.
  3. Quando estiver na página da integração, clique no botão Install, no canto inferior direito.

Uma mensagem aparecerá indicando que a integração foi instalada com sucesso.


Configure a integração

Configure o Firewall

Para instanciar a integração Azion Bot Manager Lite, siga estes passos:

  1. No canto superior esquerdo, selecione Products menu > Firewall, dentro da seção Secure.
  2. Clique no botão + Firewall.
  3. Dê um nome fácil de lembrar ao seu novo firewall.
  4. Habilite o switch Functions na seção Modules.
  5. (Opcional) Habilite o switch Debug Rules para registrar quais regras do Rules Engine são executadas para cada requisição. Isso é útil durante o ajuste da integração. Consulte Uso do Debug Rules para mais detalhes.
  6. Clique no botão Save.

Pronto. Você criou uma instância no Firewall para sua função e habilitou o uso de Functions nele.

Configure a função

Ainda na página do Firewall:

  1. Selecione a aba Functions Instances.
  2. Clique no botão + Function Instance⁠.
  3. Dê um nome fácil de lembrar à sua instância.
  4. No menu suspenso, selecione a função Azion Bot Manager Lite.

Na caixa de código Arguments é onde você passará suas variáveis.

{
"threshold": 10,
"action": "deny"
}

Mesmo quando threshold e action são as variáveis obrigatórias, você pode adicionar e definir mais variáveis, de acordo com sua necessidade, conforme mostrado no exemplo a seguir:

{
"threshold": 10,
"action": "deny",
"disabled_rules": [],
"log_tag": "my_custom_tag",
"reputation_network_lists": [],
"internal_logs": "0",
"good_fingerprint_list": [],
"bad_fingerprint_list": [],
"block_ai_bots": false
}

Para uma lista completa dos argumentos disponíveis e suas descrições, consulte a referência do Bot Manager Lite.

  1. Quando estiver pronto, clique no botão Save para salvar suas configurações.

Para saber mais informações e detalhes sobre os argumentos, visite a documentação do Azion Bot Manager Lite.

Configure o Rules Engine

Para concluir, configure o Rules Engine para definir o behavior (comportamento) e os criteria (critérios) que executarão a integração.

Ainda na página Firewall:

  1. Selecione a aba Rules Engine.
  2. Clique no botão + Rules Engine.
  3. Dê um nome fácil de lembrar à sua nova regra.
    • Você pode adicionar uma descrição, mas é um passo opcional.
  4. Selecione um critério para executar a integração:
    • Use esta regra: if Request URI does not match "\.(png|jpg|css|js|jpeg|gif|ico|ttf|svg|woff|woff2|ashx|asmx|svc|swf|otf|eot)(\?.*)?$"
      • Essa regra exclui ativos estáticos de serem processados pela função. Personalize conforme necessário.
  5. Crie um critério adicional: if Request URI does not match /.well-known/
    • Essa regra exclui o caminho /.well-known/, evitando que a função interfira em scripts de automação ou APIs web que utilizam esse caminho.
  6. Abaixo, selecione o behavior (comportamento) Run Function.
  7. Selecione a função de acordo com o nome que você deu no passo 3.
  8. Clique no botão Save.

Agora, no Console, você deve configurar seu domínio para que ele seja protegido pelo seu firewall.

  1. No Products menu, selecione Workloads.
  2. Clique no domínio que você deseja proteger com sua função Bot Manager Lite.
  3. Na seção Settings, clique no seletor de Firewall e escolha o firewall que você acabou de criar.
  4. Clique no botão Save.

Pronto. Agora você tem seus domínios protegidos contra ataques de bot usando a integração Azion Bot Manager Lite.


Configuração de actions

Azion Bot Manager Lite pode executar 7 ações diferentes sempre que a pontuação da requisição for igual ou superior ao limite definido: allow, deny, drop, redirect, custom_html, random_delay e hold_connection.

Ver todas as ações na referência

Consulte os logs

Você pode usar Data Stream e Real-Time Events para obter os logs do Bot Manager Lite e monitorar a atividade dos bots em suas aplicações.

Uso do Data Stream

Para criar um novo stream para monitorar a atividade do Bot Manager Lite:

  1. Acesse o Azion Console > Data Stream.
  2. Clique no botão + Stream.
  3. Dê ao stream um nome único e fácil de lembrar.
  4. Na seção *Data Settings, selecione Functions como Source.
  • Deve ter subscrição ativa ao módulo Functions.
  1. Em Template, selecione Functions Event Collector e verá também na caixa de código Data Set as variáveis que vão ser usadas na análise de seus logs.
  2. Em Workloads, selecione entre Filter Domains ou All Current and Future Domains.
  3. Em Destination, selecione um Connector na lista suspensa.
  • Os campos para preenchimento são diferentes dependendo do tipo de endpoint que você escolher. Descubra mais informações sobre cada campo na página de configuração de endpoint.
  1. Clique no botão Save.

Agora você pode consultar os logs no endpoint selecionado.

Uso do Real-Time Events

Para acessar o Real-Time Events, proceda da seguinte forma:

  1. Acesse o Azion Console > Real-Time Events.
  2. Selecione Functions.
  3. Defina o Time Filter, de acordo com o periodo que você deseja analisar.
  4. Use a barra Search para criar uma busca mais específica.

Leitura dos campos de log

Cada entrada de log gerada pelo Bot Manager Lite contém campos que revelam como uma requisição foi avaliada. Compreender esses campos permite identificar padrões, validar o threshold configurado e decidir se é necessário ajustar as regras.

A estrutura de saída do log segue este formato:

{
"score": 8,
"action": "allow",
"log_tag": "my_custom_tag",
"matched_rules": [1, 4, 7],
"request_id": "abc123xyz",
"http_user_agent": "curl/7.68.0",
"remote_addr": "203.0.113.42"
}
CampoDescrição
scoreA pontuação acumulada atribuída à requisição. Cada regra correspondida incrementa esse valor. Se a pontuação atingir ou superar o threshold, a action configurada é acionada.
actionA ação executada para esta requisição: allow, deny, drop, redirect, custom_html, random_delay ou hold_connection.
log_tagO identificador definido no argumento log_tag. Use-o para filtrar logs quando houver múltiplas instâncias do Bot Manager Lite em diferentes regras do firewall.
matched_rulesUm array com os IDs das regras acionadas por esta requisição. Use esses IDs para identificar quais comportamentos estão incrementando a pontuação — e para desabilitar regras específicas que gerem falsos positivos.
request_idUm identificador único para a requisição, útil para correlacionar logs entre diferentes ferramentas de observabilidade da Azion.
http_user_agentA string user-agent enviada na requisição. Útil para identificar clientes automatizados ou assinaturas de bots conhecidos.
remote_addrO endereço IP do cliente. Cruze com suas listas de rede para validar a pontuação baseada em reputação.

Ajuste do Bot Manager Lite

Após revisar seus logs, você pode ajustar os argumentos da função para reduzir falsos positivos, aumentar a precisão da detecção ou adaptar a integração ao perfil de tráfego da sua aplicação.

Para editar a configuração:

  1. No canto superior esquerdo, selecione Products menu > Firewall, dentro da seção Secure.
  2. Selecione o firewall relacionado com o Bot Manager Lite.
  3. Abra a aba Functions Instances.
  4. Selecione a instância da função que quiser editar.
  5. Edite as variáveis na caixa de código Arguments.
  6. Clique no botão Save.

Ajuste do threshold

O threshold define a pontuação a partir da qual o Bot Manager Lite aciona a action configurada. Um valor menor aumenta a sensibilidade; um valor maior reduz os falsos positivos.

Comece com o modo de observação ("action": "allow" e "internal_logs": "2") para coletar dados de linha de base antes de aplicar uma ação de bloqueio:

{
"threshold": 10,
"action": "allow",
"internal_logs": "2",
"log_tag": "observation_phase"
}

Após revisar a distribuição de pontuações nos logs, reduza o threshold para o intervalo onde o tráfego malicioso se concentra — sem afetar usuários legítimos.

Desabilitação de regras que geram falsos positivos

Se IDs de regras específicos aparecerem consistentemente em matched_rules para tráfego legítimo, você pode desabilitá-los usando o argumento disabled_rules:

{
"threshold": 10,
"action": "deny",
"disabled_rules": [4, 7],
"log_tag": "production"
}

Rastreamento de múltiplas instâncias com log tags

Se você executar o Bot Manager Lite em múltiplas regras do firewall ou domínios, use valores distintos de log_tag para filtrar os logs por instância no Real-Time Events ou no Data Stream:

{
"threshold": 10,
"action": "deny",
"log_tag": "checkout_flow"
}

Pesquise por log_tag:checkout_flow no Real-Time Events para isolar a atividade daquela regra específica.

Permissão de fingerprints confiáveis para ignorar a análise

Se você tiver fingerprints associados a clientes confiáveis — como ferramentas internas de monitoramento ou parceiros verificados — você pode adicioná-los à good_fingerprint_list. Requisições desses fingerprints ignoram todas as regras de análise de bot e prosseguem sem que uma pontuação seja atribuída:

{
"threshold": 10,
"action": "deny",
"good_fingerprint_list": ["fp_trusted_monitor", "fp_partner_api"],
"log_tag": "production"
}

Da mesma forma, use bad_fingerprint_list para atribuir uma pontuação alta (+32 pontos, via regra 21) a fingerprints com má reputação conhecida:

{
"threshold": 10,
"action": "deny",
"bad_fingerprint_list": ["fp_known_attacker"],
"log_tag": "production"
}

Bloqueio automático de bots de AI

Use block_ai_bots para bloquear imediatamente requisições identificadas como provenientes de user agents de AI conhecidos, sem executar nenhuma outra regra de análise de bot:

{
"threshold": 10,
"action": "deny",
"block_ai_bots": true,
"log_tag": "production"
}

Quando block_ai_bots é true, as requisições correspondentes são bloqueadas antes das regras de pontuação serem executadas. Isso significa que elas não aparecerão em matched_rules — o bloqueio ocorre antes do pipeline de pontuação.

Controle da verbosidade dos logs

Use internal_logs para controlar quais requisições são registradas:

ValorComportamento
"0"Registra requisições com pontuação maior que 0 (padrão).
"1"Registra requisições com pontuação maior que 0 ou classificadas como Good Bot.
"2"Registra todas as requisições, independentemente da pontuação. Recomendado para observação e ajuste.
"3"Desabilita o registro de logs.

Uso do Debug Rules para rastrear a execução de regras do firewall

Debug Rules é um recurso do Firewall que registra quais regras do Rules Engine foram executadas para cada requisição. Ao ajustar o Bot Manager Lite, ele ajuda a confirmar se a regra que chama a função está sendo acionada — e em qual ordem em relação às demais regras do firewall.

Para habilitar o Debug Rules no seu firewall:

  1. No canto superior esquerdo, selecione Products menu > Firewall, dentro da seção Secure.
  2. Selecione o firewall associado ao Bot Manager Lite.
  3. Na aba Main Settings, habilite o switch Debug Rules.
  4. Clique no botão Save.

Após habilitado, as regras executadas são registradas no campo $traceback (Data Stream e Real-Time Events) ou na variável stacktrace (GraphQL API). Um exemplo de entrada:

{
"stacktrace": "{\"edge_firewall\":[\"Bot Manager Lite Rule\",\"Set WAF\"]}"
}

Isso confirma que a Bot Manager Lite Rule foi executada antes do conjunto de regras WAF para aquela requisição. Se o nome da regra não aparecer no stacktrace, os critérios configurados no Rules Engine não corresponderam — revise a configuração de critérios na aba Rules Engine.

Consulte o guia sobre gerenciar bots