Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exemple de contrôle des bots : création d'une exception pour un agent utilisateur bloqué
Si le trafic provenant de certains agents utilisateurs autres que le navigateur est bloqué par erreur, vous pouvez créer une exception en définissant le paramètre incriminé AWS WAF Règle Bot Control SignalNonBrowserUserAgent
pour compter, puis combiner l'étiquetage de la règle avec vos critères d'exception.
Note
Les applications mobiles ont généralement des agents utilisateurs autres que le navigateur, que la SignalNonBrowserUserAgent
règle bloque par défaut.
La règle suivante utilise le groupe de règles géré par Bot Control mais remplace l'action de règle pour SignalNonBrowserUserAgent
to Count. La règle du signal applique ses étiquettes comme d'habitude aux demandes correspondantes, mais les compte uniquement au lieu d'effectuer son action habituelle de blocage.
{ "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" } }
La règle suivante correspond à l'étiquette de signal que la SignalNonBrowserUserAgent
règle Bot Control ajoute à ses requêtes Web correspondantes. Parmi les demandes de signal, cette règle bloque toutes sauf celles qui ont l'agent utilisateur que nous voulons autoriser.
La règle suivante doit être exécutée après le groupe de règles géré par Bot Control précédent dans l'ordre ACL de traitement Web.
{ "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" } }