本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
规则语句列表
本节介绍可以添加到规则中的语句,并提供一些计算每个 Web ACL 容量单位 (WCU) 使用情况的指导原则。有关 WCU 的信息,请参阅 Amazon WAFWeb ACL 容量单位(WCU)。
此页按类别对规则语句进行分组,对每个语句提供高级描述,并提供指向包含语句类型更多信息的部分的链接。
比赛声明
匹配语句将 Web 请求或其来源与您提供的标准进行比较。对于许多此类语句,会Amazon WAF比较匹配内容请求的特定部分。
匹配语句是可嵌套的。您可以将它们嵌套在逻辑规则语句中,并在范围缩小语句中使用它们。
比赛声明 |
描述 |
WCU |
---|---|---|
检查请求的原产国并贴上原产国和地区的标签。 |
1 |
|
根据一组 IP 地址和地址范围检查请求。 |
大多数情况下为 1。如果您将语句配置为使用带有转发 IP 地址的标头并在的标头中指定位置Any,则 WCU 为 5。 |
|
检查对同一 Web ACL 中其他规则添加的标签的请求。 |
1 |
|
将正则表达式模式与指定的请求组件进行比较。 |
3,作为基本成本。 如果您使用请求组件所有查询参数,请添加 10 个 WCU。如果您使用请求组件 JSON 正文,则基本成本 WCU 的两倍。对于您应用的每个文本转换,添加 10 个 WCU。 |
|
将正则表达式模式与指定的请求组件进行比较。 |
每个模式集 25 美元,作为基本成本。 如果您使用请求组件所有查询参数,请添加 10 个 WCU。如果您使用请求组件 JSON 正文,则基本成本 WCU 的两倍。对于您应用的每个文本转换,添加 10 个 WCU。 |
|
根据指定的请求组件检查大小限制。 |
1,作为基本成本。 如果您使用请求组件所有查询参数,请添加 10 个 WCU。如果您使用请求组件 JSON 正文,则基本成本 WCU 的两倍。对于您应用的每个文本转换,添加 10 个 WCU。 |
|
检查指定请求组件中是否存在恶意 SQL 代码。 |
20,作为基本成本。 如果您使用请求组件所有查询参数,请添加 10 个 WCU。如果您使用请求组件 JSON 正文,则基本成本 WCU 的两倍。对于您应用的每个文本转换,添加 10 个 WCU。 |
|
将字符串与指定的请求组件进行比较。 |
基本成本取决于字符串匹配的类型,介于 1 到 10 之间。 如果您使用请求组件所有查询参数,请添加 10 个 WCU。如果您使用请求组件 JSON 正文,则基本成本 WCU 的两倍。对于您应用的每个文本转换,添加 10 个 WCU。 |
|
检查指定请求组件中是否存在跨站脚本攻击。 |
40,作为基本成本。 如果您使用请求组件所有查询参数,请添加 10 个 WCU。如果您使用请求组件 JSON 正文,则基本成本 WCU 的两倍。对于您应用的每个文本转换,添加 10 个 WCU。 |
逻辑规则语句
使用逻辑规则语句组合其他语句或否定其结果。每个逻辑规则语句都至少需要一个嵌套语句。
要对规则语句结果进行逻辑组合或否定,请将语句嵌套在逻辑规则语句下。
注意
控制台上的可视化编辑器支持单级规则语句嵌套,适用于许多需求。要嵌套更多级别,请在控制台上编辑规则的 JSON 表示形式或使用 API。
逻辑规则语句是可嵌套的。您可以将它们嵌套在其他逻辑规则语句中,并在范围缩小语句中使用它们。有关范围缩小语句的信息,请参见范围缩小声明。
复杂语句
Amazon WAF支持基于费率的语句和规则组语句。您不能将这些语句类型嵌套在其他规则语句中。对于其中一些语句,您可以通过添加向下作用域语句来缩小他们检查的请求的范围。
Statement |
描述 |
WCU |
---|---|---|
运行在指定托管规则组中定义的规则。 您可以通过添加 scope-down 语句来缩小规则组评估的请求范围。 您不能将托管规则组语句嵌套在任何其他语句类型中。 |
由规则组定义,以及范围缩小语句的任何其它 WCU。 |
|
运行您管理的规则组中定义的规则。 您不能将规则组语句嵌套在任何其他语句类型中。 |
在创建规则组时,您可以为其定义 WCU 限制。 |
|
跟踪来自单个 IP 地址的请求速率,并在地址发送过多请求时暂时屏蔽这些地址。 您可以通过添加范围缩小语句,缩小基于速率的语句评估的请求的范围。 您不能在任何规则声明下嵌套基于费率的声明。您可以在自己管理的规则组内定义基于费率的语句。 |
2,再加上任何用于范围缩小声明的其他 WCU。 |