匹配条件说明

更新时间:2026-08-27 15:03:14

阅读时间: 约 5 分钟

本页是所有安全策略中"匹配条件"字段的完整参考。

通用说明

匹配条件用于精确定义规则的作用范围。多个条件之间可设置为:

  • AND(全部满足):请求必须同时满足所有条件
  • OR(任一满足):请求满足任意一个条件即生效

可用字段类型

请求路径(URI Path)

运算符 说明 示例
等于 完全匹配指定路径 /login
包含 路径中包含指定字符串 /api
以…开头 路径前缀匹配 /admin/
以…结尾 路径后缀匹配 .php
正则匹配 使用正则表达式匹配 ^/api/v[0-9]+/
不等于 排除指定路径 /health

性能提示: 正则匹配比前缀/包含匹配消耗更多计算资源,非必要时优先使用前缀匹配。

请求方法(HTTP Method)

支持:GETPOSTPUTDELETEPATCHHEADOPTIONS

客户端 IP(Client IP)

格式 示例
单个 IP 1.2.3.4
CIDR 段 1.2.3.0/24
IP 范围 1.2.3.1-1.2.3.100

注意: 若请求经过代理或负载均衡转发,"客户端 IP"取自 X-Forwarded-For 头中的第一个 IP。确保您的源站正确配置了该请求头的传递。

请求头(HTTP Header)

运算符 说明
存在 请求中包含该请求头(值不限)
等于 请求头值完全匹配
包含 请求头值中包含指定字符串
正则匹配 使用正则匹配请求头值
不存在 请求中不包含该请求头

User-Agent

同请求头字段,针对 User-Agent 头的便捷配置。

运算符 示例
包含 Googlebot
等于 Mozilla/5.0 ...
正则匹配 ^python-requests/
为空

Cookie

运算符 说明
Cookie 名称存在 请求携带了指定名称的 Cookie
Cookie 值等于 指定 Cookie 的值完全匹配
Cookie 值包含 指定 Cookie 的值包含特定字符串

Referer

同请求头字段,针对 Referer 头的便捷配置,支持等于、包含、为空等运算符。

请求参数(Query String)

对 URL 中的 Query String 参数进行匹配:

  • 参数名称等于:keyword
  • 参数值包含:SELECT

适用场景: 当 WAF 对带有特定查询参数的合法请求产生误报时,使用参数条件精确定义例外范围。

URI

URI 与"请求路径"的区别:URI 包含参数,路径不含参数。

示例 路径 URI
https://example.com/search?q=test&page=1 /search /search?q=test&page=1

支持运算符:等于、不等于、包含、不包含、开头是、结尾是、通配符匹配、通配符不匹配、正则匹配、正则不匹配

大小写: 等于/不等于运算符区分大小写;包含、开头是、结尾是、通配符、正则运算符不区分大小写。

来源国家/地区(Geo Location)

基于 IP 地理位置数据库判断请求来源地区,用于 IP/区域封禁策略。

支持运算符:等于、不等于

状态码

匹配或排除特定的 HTTP 响应状态码。仅统计响应阶段的状态码。

支持运算符:等于、不等于

适用场景: 频率限制中,基于特定错误响应码(如 404、5xx)的频率限制;或自定义规则中根据响应码触发处置。

客户端分组

匹配或排除属于特定客户端分组的请求。客户端分组由平台根据请求特征自动划分。

支持运算符:等于、不等于

ASN(自治系统号)

基于 IP 所属的自治系统号进行匹配。适用于需要针对特定 ISP、云厂商或数据中心 IP 段进行批量处置的场景。

支持运算符:等于、不等于

典型用途: 拦截来自特定云服务商(如 AWS、Aliyun 等)的 IP 段,或放行来自特定企业专线 ASN 的流量。


特殊字段(高级用法)

字段 说明 典型用途
JA3 指纹 TLS 握手指纹,用于识别特定 TLS 客户端 识别使用特定工具的攻击者
请求体(Body) 匹配 POST 请求体内容 识别特定格式的恶意 Payload
响应状态码 基于服务器响应码触发规则 频率限制中统计特定错误响应
本篇文档内容对您是否有帮助?
有帮助
我要反馈
提交成功!非常感谢您的反馈,我们会继续努力做到更好!