机器人控制功能示例:为被阻止的用户代理创建例外 - Amazon WAF、 Amazon Firewall ManagerAmazon Shield Advanced、和 Amazon Shield 网络安全总监
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

引入全新的主机体验 Amazon WAF

现在,您可以使用更新的体验访问控制台中任意位置的 Amazon WAF 功能。有关更多详细信息,请参阅 使用更新的主机体验

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

机器人控制功能示例:为被阻止的用户代理创建例外

如果来自某些非浏览器用户代理的流量被错误屏蔽,则可以通过将违规的 Bot Control 规则设置为 Coun Amazon WAF t,然后将该规则的标签与您的例外标准结合起来SignalNonBrowserUserAgent来创建例外。

注意

移动应用程序通常具有非浏览器用户代理,SignalNonBrowserUserAgent 规则在默认情况下会阻止这些代理。

以下规则使用机器人控制功能托管规则组,但会将 SignalNonBrowserUserAgent 规则操作覆盖为计数。信号规则像往常一样将其标签应用于匹配的请求,但仅对它们进行计数,而不是执行通常的阻塞操作。

{ "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" } }

以下规则与机器人控制功能 SignalNonBrowserUserAgent 规则添加到其匹配的 Web 请求中的信号标签相匹配。在信号请求中,除了那些拥有我们想要允许的用户代理的请求外,该规则会阻止所有请求。

以下规则必须在保护包或 Web ACL 处理顺序中前面的 Bot Control 托管规则组之后运行。

{ "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" } }