匹配条件
概述
Web 防护功能通过匹配请求的不同条件来实现访问管控。以下详细介绍了各种匹配条件选项、匹配条件说明以及相关配置方式和限制。
使用匹配条件
您可以使用规则的匹配条件指定规则的生效范围,控制防护例外规则、自定义规则、速率限制、自定义 Bot 规则的生效范围。
说明:
当配置了多个匹配条件时,规则仅在全部匹配条件都满足时生效。
匹配条件选项及说明
说明:
支持配置的匹配条件,根据规则类型和您订阅的 EdgeOne 套餐有些区别。具体支持情况请参考对应的功能介绍文档。
匹配条件选项 | 匹配条件说明 | 标准版套餐 | 企业版套餐 |
请求客户端 IP | 匹配请求的来源IP地址。支持基于地域、ASN、IP 和 CIDR 网段进行匹配。 当使用 IP 和 CIDR 网段匹配时,可以引用 IP 分组。 单个匹配条件最多可配置8个 IP 分组。 | 支持 | 支持 |
请求客户端 IP(优先匹配 XFF 头部) | 当请求携带合法 XFF(X-Forwarded-For)头部时,匹配 XFF 头部第一个 IP;否则,匹配来源 IP 地址。 | 不支持 | 支持 |
自定义请求头部 | 匹配请求的指定头部,提供额外参数选项匹配特定名称的头部值。 忽略大小写。 支持等于、不等于、包含、不包含、通配符匹配、通配符不匹配、长度大于、长度小于、内容为空、不存在、正则匹配。 最多支持128个匹配值。 | 不支持 | 支持 |
请求 URL | 匹配请求的 URL。 忽略大小写。 支持等于、不等于、包含、不包含、通配符匹配、通配符不匹配、长度大于、长度小于、内容为空、不存在、正则匹配。 最多支持128个匹配值。 | 匹配条件不支持正则匹配 | 支持 |
请求来源(Referer 头部) | 匹配请求的 Referer 头部。 忽略大小写。 支持等于、不等于、包含、不包含、通配符匹配、通配符不匹配、长度大于、长度小于、内容为空、不存在、正则匹配。 最多支持128个匹配值。 | 匹配条件不支持正则匹配 | 支持 |
请求内容类型(Accept 头部) | 匹配请求的 Accept 头部。 忽略大小写。 支持等于、不等于、包含、不包含、通配符匹配、通配符不匹配、长度大于、长度小于、内容为空、不存在、正则匹配。 最多支持128个匹配值。 | 不支持 | 支持 |
请求路径(Path) | 匹配请求 URL 的路径部分(不包含查询参数)。 忽略大小写。 | 不支持 | 支持 |
请求方式(Method) | 匹配请求的方法。 忽略大小写。 支持多项选择:GET、POST、HEAD、PUT、DELETE、TRACE、OPTIONS、CONNECT。 | 匹配条件不支持正则匹配 | 支持 |
请求 Cookie | 匹配指定请求 Cookie 头部参数值。需指定 Cookie 参数名称。 忽略大小写。 支持等于、不等于、包含、不包含、通配符匹配、通配符不匹配、长度大于、长度小于、内容为空、不存在、正则匹配。 最多支持128个匹配值。 | 不支持 | 支持 |
XFF 扩展头部 | 匹配请求的 XFF(X-Forwarded-For)头部。 忽略大小写。 支持等于、不等于、包含、不包含、通配符匹配、通配符不匹配、长度大于、长度小于、内容为空、不存在、正则匹配。 最多支持128个匹配值。 | 不支持 | 支持 |
网络层协议 | 匹配请求使用的 IP 协议类型。 支持多项选择:IPv4、IPv6。 | 不支持 | 支持 |
应用层协议 | 匹配请求使用的应用层协议。 支持多项选择:HTTP、HTTPS。 | 不支持 | 支持 |
响应状态码 | 匹配响应的 HTTP 状态码。 仅支持速率限制,选择基于响应统计时支持配置。 最多支持同时匹配20个状态码。 | 不支持 | 支持 |