本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
请求速率限制行为
Amazon WAF 用于对基于速率的规则的请求进行速率限制的标准与用于汇总该 Amazon WAF 规则请求的标准相同。如果您为规则定义了范围缩小语句,则 Amazon WAF 只会聚合 scope-down 语句匹配的请求、计数请求和速率限制请求。
要使基于速率的规则将其规则操作设置应用于特定 Web 请求,匹配条件如下:
-
Web 请求与规则的范围缩小语句(如果已定义)相匹配。
-
Web 请求属于一个聚合实例,其请求数当前已超过规则的限制。
如何 Amazon WAF 应用规则操作
当基于速率的规则对请求应用速率限制时,它会应用规则操作,如果您在操作规范中定义了任何自定义处理或标签,则该规则将应用这些操作。这种请求处理方式与匹配规则将其操作设置应用于匹配的 Web 请求的方式相同。基于速率的规则仅对主动限制速率的请求应用标签或执行其他操作。
您可以使用除 Allow 以外的任何规则操作。有关规则操作的一般信息,请参阅 规则操作。
以下列表描述了每个操作的速率限制是如何起作用的。
-
Block— Amazon WAF 阻止请求并应用您定义的任何自定义屏蔽行为。
-
Count— 对请求进行 Amazon WAF 计数,应用您定义的所有自定义标头或标签,并继续对请求进行 Web ACL 评估。
此操作不会限制请求的速率。它只计算超过限制的请求。
-
CAPTCHA 或 Challenge – Amazon WAF 会像 Block 或 Count 一样处理请求,具体取决于请求令牌的状态。
此操作不会限制具有有效令牌的请求的速率。它限制了超过限制且缺少有效令牌的请求速率。
-
如果请求没有有效的未过期令牌,则该操作会阻止该请求并将验证码拼图或浏览器质询发送回客户端。
如果最终用户或客户端浏览器成功响应,则客户端会收到有效的令牌并自动重新发送原始请求。如果聚合实例的速率限制仍然有效,则这个带有有效的未过期令牌的新请求将按照下一个要点中所述的操作进行应用。
-
如果请求具有有效的未过期令牌,则 CAPTCHA 或 Challenge 操作会验证令牌并且不对请求采取任何操作,与 Count 操作类似。基于速率的规则在不采取任何终止操作的情况下将请求评估返回到 Web ACL,然后 Web ACL 继续对请求进行评估。
有关更多信息,请参阅 CAPTCHA然后Challenge在 Amazon WAF。
-
如果您仅对 IP 地址或转发 IP 地址进行速率限制
当您将规则配置为仅对转发 IP 地址的 IP 地址进行速率限制时,规则实例最多可以对 10,000 个 IP 地址进行速率限制。如果规则实例识别出超过 10,000 个 IP 地址并进行限制速率,则它只会限制 10,000 个最高发件人。
使用此配置,您可以检索基于速率的规则当前限制速率的 IP 地址列表。如果您使用的是 scope-down 语句,则受速率限制的请求只是 IP 列表中与 scope-down 语句匹配的请求。有关检索 IP 地址列表的信息,请参阅 列出基于速率的规则实施速率限制的 IP 地址。