如何在 AWS WAF 中对特定请求参数或 URI 应用速率限制?

2 分钟阅读
0

我想在 AWS WAF 中对特定请求参数或 URI 应用速率限制。

解决方法

为特定 URI 添加速率限制

完成以下步骤:

  1. 打开 AWS WAF 和 AWS Shield 控制台
  2. 在导航窗格中的 AWS WAF 下,选择 Web ACLs(Web ACL)。
  3. 选择您的 Web 访问控制列表 (Web ACL)。
  4. Rules(规则)下,选择 Add rules(添加规则),然后选择 Add my own rules and rule groups(添加我自己的规则和规则组)。
  5. Rule type(规则类型)页面上,输入以下信息:
    对于 Rule Type(规则类型),请选择 Rule builder(规则生成器)。
    对于 Name(名称),输入您的规则名称。
    对于 Type(类型),请选择 Rate-based rule(基于速率的规则)。
    对于 Rate limit(速率限制),输入限制。
    对于 Evaluation window(评估窗口),选择一个值。
    对于 Request aggregation(请求聚合),选择您想要的速率限制方式。有关详细信息,请参阅在 AWS WAF 中聚合基于速率的规则
    注意:如果您的流量流经代理或内容分发网络 (CDN),请使用标头中的 IP 地址。有关详细信息,请参阅在 AWS WAF 中使用转发的 IP 地址
  6. 对于 Scope of inspection and rate limiting(检查范围和速率限制),请选择 Only consider requests that match the criteria in a rule statement(仅考虑符合规则语句中相关标准的请求)。
  7. 对于 If a request(如果请求),请选择 matches the statement(与该语句相匹配)。如果要添加多个 URI 路径条件,请选择 matches at least one of the statements (OR)(至少匹配其中一个语句 (OR))。
  8. 对于 Statement(语句),输入以下信息:
    对于 Inspect(检查),请选择 URI path(URI 路径)。
    对于 Match type(匹配类型),请选择 Contains string(包含字符串)。
    对于 String to match(要匹配的字符串),请输入 /admin注意:/admin 替换为您的 URI 路径。
    对于
    文本转换
    ,选择
  9. 对于 Action(操作),选择 Block(阻止)。
  10. 选择 Add rule(添加规则)。
  11. 对于 Set Rule Priority(设置规则优先级),选择您的规则,然后更新其优先级。有关详细信息,请参阅在 Web ACL 中设置规则优先级
  12. 选择 Save(保存)。

将特定 IP 地址排除在速率限制规则之外

完成以下步骤:

  1. 创建 IP 集,其中包含您不想限制速率的所有 IP 地址。
  2. 打开 AWS WAF 和 AWS Shield 控制台
  3. 在导航窗格中的 AWS WAF 下,选择 Web ACLs(Web ACL)。
  4. 选择您的 Web ACL。
  5. Rules(规则)下,选择 Add rules(添加规则),然后选择 Add my own rules and rule groups(添加我自己的规则和规则组)。
  6. Rule type(规则类型)页面上,输入以下信息:
    对于 Rule type(规则类型),请选择 Rule Builder(规则生成器)。
    对于 Name(名称),输入您的规则名称。
    对于 Type(类型),请选择 Rate-based rule(基于速率的规则)。
    对于 Rate limit(速率限制),输入限制。
    对于 Evaluation window(评估窗口),选择一个值。
    对于 Request aggregation(请求聚合),选择您想要的速率限制方式。有关详细信息,请参阅在 AWS WAF 中聚合基于速率的规则
    注意:如果您的流量流经代理或 CDN,请使用标头中的 IP 地址。有关详细信息,请参阅在 AWS WAF 中使用转发的 IP 地址
  7. 对于 Scope of inspection and rate limiting(检查范围和速率限制),请选择 Only consider requests that match the criteria in a rule statement(仅考虑符合规则语句中相关标准的请求)。
  8. 对于 If a request(如果请求),请选择 matches the statement(与该语句相匹配)。如果要添加多个 URI 路径条件,请选择 matches at least one of the statements (OR)(至少匹配其中一个语句 (OR))。
  9. 对于 Statement(语句),输入以下信息:
    对于检查,选择源自 IP 地址
    对于 IP set(IP 集),选择您的 IP 集。
    对于 IP address to use for rate limiting(要用于速率限制的 IP 地址),请选择以下项目:
    如果要根据客户端 IP 字段限制速率,请选择 Source IP address(源 IP 地址)。
    如果要根据标头中的 IP 地址限制速率,请选择 IP address in header(标头中的 IP 地址)。
  10. 对于 Action(操作),选择 Block(阻止)。
  11. 选择 Add rule(添加规则)。
  12. 对于 Set Rule Priority(设置规则优先级),选择您的规则,然后更新其优先级。有关详细信息,请参阅在 Web ACL 中设置规则优先级
  13. 选择 Save(保存)。

相关信息

AWS WAF 中基于速率的规则高级设置

AWS 官方已更新 2 个月前