介绍 AWS WAF 的全新控制台体验
现在,您可以使用更新后的体验访问控制台中任意位置的 AWS WAF 功能。有关更多详细信息,请参阅 使用更新的控制台体验。
AWS WAF 如何处理规则和规则组操作
本节介绍 AWS WAF 如何使用规则和规则组以处理操作。
配置规则和规则组时,您可以根据您的意愿选择 AWS WAF 如何处理匹配的 web 请求:
-
Allow 和 Block 正在终止操作:Allow 操作 Block 会停止对匹配的 web 请求进行保护包(web ACL)的所有其他处理。如果在保护包(web ACL)中的某条规则找到与请求的匹配项,且该规则的操作是 Allow 或 Block,该匹配项将为保护包(web ACL)确定对 web 请求的最终处置。AWS WAF 不会处理保护包(web ACL)中位于匹配项之后的任何其他规则。对于直接添加到保护包(web ACL)的规则以及已添加规则组中的规则,此原理同样适用。通过 Block 操作,受保护的资源将无法接收或处理 web 请求。
-
Count 是非终止操作:当具有 Count 操作的规则与请求匹配时,AWS WAF 会对请求进行计数,然后继续处理保护包(web ACL)规则集中的后续规则。
-
CAPTCHA 和 Challenge 可能正在非终止或终止操作:当具有其中一个操作的规则与请求相匹配时,AWS WAF 会检查其令牌状态。如果请求具有有效的令牌,则 AWS WAF 将匹配视为 Count 匹配,然后继续处理保护包(web ACL)规则集中遵循的规则。如果请求没有有效的令牌,则 AWS WAF 终止评估并向客户端发送验证码拼图或静默的后台客户端会话质询,以解决问题。
如果规则评估未导致任何终止操作,则 AWS WAF 将保护包(web ACL)默认操作应用于请求。有关信息,请参阅 在 AWS WAF 中设置保护包(web ACL)默认操作。
在保护包(web ACL)中,您可以覆盖规则组内规则的操作设置,也可以覆盖规则组返回的操作。有关信息,请参阅 在 AWS WAF 中覆盖规则组操作。
操作和优先级设置之间的交互
AWS WAF 对 web 请求应用的操作受规则在保护包(web ACL)中的数字优先级设置影响。例如,假设保护包(web ACL)有一条规则具有 Allow 操作且数字优先级为 50,另一条规则具有 Count 操作且数字优先级为 100。AWS WAF 按优先级顺序评估保护包(web ACL)中的规则,从最低设置开始,因此在评估计数规则之前,将先评估允许规则。同时匹配两个规则的 web 请求将首先匹配允许规则。由于 Allow 是终止操作,AWS WAF 将停止对该匹配进行评估,并且不会根据计数规则评估请求。
如果您只想在计数规则指标中包含与允许规则不匹配的请求,则可以采用规则的优先级设置。
另一方面,如果您想要计数规则中的计数指标,即使请求与允许规则匹配也是如此,则需要为计数规则指定比允许规则更低的数字优先级设置,以便首先运行计数规则。
有关优先级设置的更多信息,请参阅 设置规则优先级。