本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
基于速率的规则聚合实例和计数
本节介绍了基于速率的规则如何评估 Web 请求。
当基于速率的规则使用您的聚合条件评估 Web 请求时,该规则为指定的聚合键找到的每组唯一值都将定义一个唯一的聚合实例。
-
多键 – 如果您定义了多个自定义键,则每个键的值将构成聚合实例的定义。每个唯一的值组合都定义了一个聚合实例。
-
单键 – 如果您在自定义密钥中或通过选择单例 IP 地址选项之一选择了单个密钥,则该密钥的每个唯一值都定义了一个聚合实例。
-
全部计数-无密钥 – 如果您选择了聚合选项全部计数,则该规则评估的所有请求都属于该规则的单个聚合实例。此选择需要范围缩小语句。
基于速率的规则分别计算其识别的每个聚合实例的 Web 请求。
例如,假设基于速率的规则使用以下 IP 地址和 HTTP 方法值评估 Web 请求:
IP 地址 10.1.1.1,HTTP 方法 POST
IP 地址 10.1.1.1,HTTP 方法 GET
IP 地址 127.0.0.0,HTTP 方法 POST
IP 地址 10.1.1.1,HTTP 方法 GET
该规则根据您的聚合条件创建不同的聚合实例。
如果聚合条件只是 IP 地址,则每个单独的 IP 地址都是一个聚合实例,并且 AWS WAF 会分别计算每个 IP 地址的请求数。我们示例的聚合实例和请求计数如下所示:
IP 地址 10.1.1.1:计数 3
IP 地址 127.0.0.0:计数 1
如果聚合条件是 HTTP 方法,则每个 HTTP 方法都是一个聚合实例。我们示例的聚合实例和请求计数如下所示:
HTTP 方法 POST:计数 2
HTTP 方法 GET:计数 2
如果聚合条件是 IP 地址和 HTTP 方法,则每个 IP 地址和每个 HTTP 方法都将构成组合的聚合实例。我们示例的聚合实例和请求计数如下所示:
IP 地址 10.1.1.1,HTTP 方法 POST:计数 1
IP 地址 10.1.1.1,HTTP 方法 GET:count 2
IP 地址 127.0.0.0,HTTP 方法 POST:计数 1