Web应用防火墙的白名单设置和自定义防护策略都需要定义规则匹配条件。本文具体描述了规则匹配条件中支持使用的字段及其释义。

注意 本文介绍的匹配条件字段对应2020年1月发布的新版控制台界面。如果您使用在此日期前开通的Web应用防火墙实例,请参见精准访问控制

什么是匹配条件

在Web应用防火墙中,您可以自定义白名单规则和访问控制/限流防护策略规则。自定义规则由匹配条件与匹配动作构成。在创建规则时,您通过设置匹配字段、逻辑符和相应的匹配内容定义匹配条件,并针对符合匹配条件规则的访问请求定义相应的动作。

匹配条件包含匹配字段、逻辑符、匹配内容。匹配内容暂时不支持通过正则表达式描述,但允许设置为空值。每一条自定义规则中最多允许设置三个匹配条件组合,且各个条件间是“与”的逻辑关系,即访问请求必须同时满足所有匹配条件才算命中该规则,并执行相应的匹配动作。

支持的匹配字段

下表描述了匹配条件中支持使用的匹配字段。其中,高级字段表示仅在企业版及以上规格的Web应用防火墙实例中支持。

匹配字段 是否高级字段 适用的逻辑符 字段描述
IP 属于、不属于 访问请求的来源IP,支持填写IP或IP段(例如,1.1.1.1/24)。
说明 您可以填写最多50个IP或IP段,以英文逗号(,)分隔。
URL
  • 包含、不包含
  • 等于、不等于
访问请求的URL地址。
Referer
  • 包含、不包含
  • 等于、不等于
  • 长度等于、长度大于、长度小于
  • 不存在
访问请求的来源网址,即该访问请求是从哪个页面跳转产生的。
User-Agent
  • 包含、不包含
  • 等于、不等于
  • 长度等于、长度大于、长度小于
发起访问请求的客户端的浏览器标识、渲染引擎标识和版本信息等浏览器相关信息。
Params
  • 包含、不包含
  • 等于、不等于
  • 长度等于、长度大于、长度小于
访问请求的URL地址中的参数部分,通常指URL中”?”后面的部分。例如,www.abc.com/index.html?action=login中的action=login就是参数部分。
Cookie
  • 包含、不包含
  • 等于、不等于
  • 长度等于、长度大于、长度小于
  • 不存在
访问请求中的Cookie信息。
Content-Type
  • 包含、不包含
  • 等于、不等于
  • 长度等于、长度大于、长度小于
访问请求指定的响应HTTP内容类型,即MIME类型信息。
Content-Length 值小于、值等于、值大于 访问请求的响应内容所包含的字节数。
X-Forwarded-For
  • 包含、不包含
  • 等于、不等于
  • 长度等于、长度大于、长度小于
  • 不存在
访问请求的客户端真实IP。X-Forwarded-For(XFF)用来识别通过HTTP代理或负载均衡方式转发的访问请求的客户端最原始的IP地址的HTTP请求头字段,只有通过HTTP代理或者负载均衡服务器转发的访问请求才会包含该项。
Post-Body
  • 包含、不包含
  • 等于、不等于
访问请求的响应内容信息。
Http-Method 等于、不等于 访问请求的方法,如GET、POST等。
Header
  • 包含、不包含
  • 等于、不等于
  • 长度等于、长度大于、长度小于
  • 不存在
访问请求的头部信息,用于自定义HTTP头部字段。

逻辑符释义

逻辑符 说明
属于、不属于 匹配字段属于、不属于匹配内容。
包含、不包含 匹配字段包含、不包含匹配内容。
等于、不等于 匹配字段等于、不等于匹配内容。
长度等于、长度大于、长度小于 匹配字段的长度等于、大于、小于匹配内容。
不存在 匹配字段不存在。
值小于、值等于、值大于 匹配字段的值小于、等于、大于匹配内容。

相关文档