你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

为应用程序网关 WAF v2 创建速率限制自定义规则

速率限制使你能够检测并阻止流向应用程序的异常高流量。 速率限制的工作原理是计算与配置的速率限制规则匹配的所有流量,并为匹配该规则(超过配置阈值)的流量执行配置的操作。 有关详细信息,请参阅速率限制概述

配置速率限制自定义规则

使用以下信息为应用程序网关 WAFv2 配置速率限制规则。

场景 1 - 创建规则,按客户端 IP 对超过配置阈值的流量进行速率限制,从而匹配所有流量。

  1. 打开现有的应用程序网关 WAF 策略。
  2. 选择“自定义规则”。
  3. 选择“添加自定义规则”。
  4. 键入自定义规则的名称。
  5. 对于“规则类型”,请选择“速率限制”。
  6. 对于规则,请键入优先级。
  7. 对于“速率限制持续时间”,请选择“1 分钟”。
  8. 对于“速率限制阈值(请求)”,请键入 200。
  9. 对于“速率限制流量分组依据”,请选择“客户端地址”。
  10. 在“条件”下,为“匹配类型”选择“IP 地址”。
  11. 对于“操作”,请选择“不包含”。
  12. 对于匹配条件,在“IP 地址或范围”下键入 255.255.255.255/32。
  13. 将操作设置保留为“拒绝流量”。
  14. 选择“添加”,将自定义规则添加到策略。
  15. 选择“保存”以保存配置,并使 WAF 策略的自定义规则处于活动状态。

场景二 - 创建速率限制自定义规则,以匹配除源自美国的流量之外的所有流量。 流量根据客户端源 IP 地址的地理位置进行分组、计数和速率限制

  1. 打开现有的应用程序网关 WAF 策略。
  2. 选择“自定义规则”。
  3. 选择“添加自定义规则”。
  4. 键入自定义规则的名称。
  5. 对于“规则类型”,请选择“速率限制”。
  6. 对于规则,请键入优先级。
  7. 对于“速率限制持续时间”,请选择“1 分钟”。
  8. 对于“速率限制阈值(请求)”,请键入 500。
  9. 为“速率限制流量分组依据”选择“地理位置”。
  10. 在“条件”下,为“匹配类型”选择“地理位置”。
  11. 在“匹配变量”部分中,为“匹配变量”选择“RemoteAddr”。
  12. 对于“操作”,请选择“不是”。
  13. 对于“国家/地区”,选择“美国”。
  14. 将操作设置保留为“拒绝流量”。
  15. 选择“添加”,将自定义规则添加到策略。
  16. 选择“保存”以保存配置,并使 WAF 策略的自定义规则处于活动状态。

场景三 - 创建与登录页的所有流量匹配的速率限制自定义规则,并使用 GroupBy None 变量。 这将对与规则匹配的所有流量进行分组并计为一个流量,并将操作应用于与规则 (/login) 匹配的所有流量。

  1. 打开现有的应用程序网关 WAF 策略。
  2. 选择“自定义规则”。
  3. 选择“添加自定义规则”。
  4. 键入自定义规则的名称。
  5. 对于“规则类型”,请选择“速率限制”。
  6. 对于规则,请键入优先级。
  7. 对于“速率限制持续时间”,请选择“1 分钟”。
  8. 对于“速率限制阈值(请求)”,请键入 100。
  9. 为“速率限制流量分组依据”选择“无”。
  10. 在“条件”下,为“匹配类型”选择“字符串”。
  11. 在“匹配变量”部分中,为“匹配变量”选择“RequestUri”。
  12. 对于“操作”,请选择“不是”。
  13. 对于“运算符”,选择“包含”。
  14. 选择转换是可选操作。
  15. 输入匹配值的登录页路径。 在此示例中,我们使用 /login。
  16. 将操作设置保留为“拒绝流量”。
  17. 选择“添加”,将自定义规则添加到策略
  18. 选择“保存”以保存配置,并使 WAF 策略的自定义规则处于活动状态。

后续步骤

自定义 Web 应用程序防火墙规则