Exemplo de controle de bots: criar uma exceção para um agente de usuário bloqueado - AWS WAF, AWS Firewall Manager, e AWS Shield Advanced

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplo de controle de bots: criar uma exceção para um agente de usuário bloqueado

Se o tráfego de alguns agentes de usuário que não são do navegador estiver sendo bloqueado erroneamente, você pode criar uma exceção definindo a regra de controle de AWS WAF bots ofensiva como Count e, em seguida, combinando SignalNonBrowserUserAgent a rotulagem da regra com seus critérios de exceção.

nota

Os aplicativos móveis geralmente têm agentes de usuário que não são do navegador, que a regra SignalNonBrowserUserAgent bloqueia por padrão.

A regra a seguir usa o grupo de regras gerenciadas do Controle de Bots, mas substitui a ação da regra para SignalNonBrowserUserAgent para contar. A regra de sinal aplica seus rótulos normalmente às solicitações correspondentes, mas só os conta em vez de realizar sua ação usual de bloqueio.

{ "Name": "AWS-AWSBotControl-Example", "Priority": 5, "Statement": { "ManagedRuleGroupStatement": { "VendorName": "AWS", "Name": "AWSManagedRulesBotControlRuleSet", "ManagedRuleGroupConfigs": [ { "AWSManagedRulesBotControlRuleSet": { "InspectionLevel": "COMMON" } } ], "RuleActionOverrides": [ { "ActionToUse": { "Count": {} }, "Name": "SignalNonBrowserUserAgent" } ], "ExcludedRules": [] } }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "AWS-AWSBotControl-Example" } }

A regra a seguir corresponde ao rótulo de sinal que o SignalNonBrowserUserAgent da regra do Controle de Bots adiciona a suas solicitações da web correspondentes. Entre as solicitações de sinal, essa regra bloqueia todas, exceto aquelas que têm o agente de usuário que queremos permitir.

A regra a seguir deve ser executada após o grupo de regras gerenciadas anterior do Controle de Bots na ordem de processamento da web ACL.

{ "Name": "match_rule", "Statement": { "AndStatement": { "Statements": [ { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:aws:bot-control:signal:non_browser_user_agent" } }, { "NotStatement": { "Statement": { "ByteMatchStatement": { "FieldToMatch": { "SingleHeader": { "Name": "user-agent" } }, "PositionalConstraint": "EXACTLY", "SearchString": "PostmanRuntime/7.29.2", "TextTransformations": [ { "Priority": 0, "Type": "NONE" } ] } } } } ] } }, "RuleLabels": [], "Action": { "Block": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "match_rule" } }