精准访问控制支持自定义访问规则,根据客户端IP、请求URL、以及常见的请求头字段过滤访问请求。

功能描述

精准访问控制允许您设置访问控制规则,对常见的HTTP字段(如IP、URL、Referer、UA、参数等)进行条件组合,用来筛选访问请求,并对命中条件的请求设置放行、阻断、或告警操作。精确访问控制支持业务场景定制化的防护策略,可用于盗链防护、网站管理后台保护等。

精准访问控制规则由匹配条件与匹配动作构成。在创建规则时,您通过设置匹配字段、逻辑符和相应的匹配内容定义匹配条件,并针对符合匹配条件规则的访问请求定义相应的动作。
  • 匹配条件
    匹配条件包含匹配字段、逻辑符、匹配内容。匹配内容暂时不支持通过正则表达式描述,但允许设置为空值。
    说明 包年包月模式下,高级版WAF实例仅支持IP、URL、Referer、User-Agent匹配字段,且每个域名最多只能定义20条规则;企业版和旗舰版的WAF实例支持所有匹配字段(见 支持的匹配字段),支持为每个域名定义的规则数分别为100条、200条。
    说明 按量付费的WAF实例提供两种规格的精准访问控制:基础防护和高级防护。您可以在 规格与配置中进行调整。具体操作,请参考功能与规格配置

    • 基础防护仅支持基于IP和URL的匹配条件,且每个域名可设置10条规则。
    • 高级防护支持基于IP、URL、Cookie、User-Agent、Referer、提交参数、X-Forwarded-For等各类常见HTTP头部的逻辑组合判断功能,每个域名可设置100条规则。
    说明 每一条精准访问控制规则中最多允许设置三个匹配条件组合,且各个条件间是“与”的逻辑关系,即访问请求必须同时满足所有匹配条件才算命中该规则,并执行相应的匹配动作。
  • 匹配动作
    精准访问控制规则支持以下匹配动作:
    • 阻断:阻断命中匹配条件的访问请求。
    • 放行:放行命中匹配条件的访问请求。
    • 告警:放行命中匹配条件的访问请求,并针对该请求进行告警。
    说明 选择 放行告警匹配动作后,您可以进一步设置该请求是否需要继续经过其它WAF防护功能检测过滤,如Web应用攻击防护、CC应用攻击防护、智能防护、地区封禁、数据风控、SDK防护等。

规则匹配顺序

如果您设置了多条规则,则多条规则间有先后匹配顺序,即访问请求将根据您设定的精准访问控制规则顺序依次进行匹配,顺序较前的精准访问控制规则优先匹配。

您可以通过规则排序功能对所有精准访问控制规则进行排序,以获得最优的防护效果。

操作步骤

参照以下操作步骤,为已防护的域名配置精准访问控制规则:
说明 执行以下操作前,请确保已将网站接入WAF进行防护。具体操作请参考CNAME接入指南
  1. 登录云盾Web应用防火墙控制台
  2. 前往管理 > 网站配置页面,并在页面上方选择WAF所在地区(中国大陆、海外地区)。
  3. 选择要操作的域名,单击其操作列下的防护配置
  4. 精准访问控制下,开启防护,并单击前去配置

  5. 单击新增规则,设置规则的匹配条件和相应的匹配动作,完成后单击确定
    说明 关于规则参数说明,请参考 精准访问控制规则;关于应用示例,请参考 配置示例


  6. 成功创建规则后,您可以选择执行以下操作:

    • 编辑规则内容或删除规则。
    • 如果有多条规则,单击规则排序,并操作上移下移置顶置底调整规则的匹配顺序。
      说明 越靠上的规则越优先匹配。

配置示例

精准访问控制规则支持多种配置方法,您可以结合自身业务特点定义相应的规则。通过设置精准访问控制规则也可以实现特定的Web漏洞防护

以下罗列了一些常用的精确访问控制配置示例,供您参考。

配置IP黑白名单

通过设置以下精准访问控制规则,阻断来自1.1.1.1的所有访问请求。

通过设置以下精准访问控制规则,放行来自2.2.2.0/24网段的所有访问请求。

说明 应用此白名单配置规则时,请不要勾选 继续执行Web应用攻击防护继续执行CC应用攻击防护等选项,不然访问请求仍可能被WAF的其它防护功能拦截。

更多关于配置IP黑白名单的操作及注意事项,请参考IP黑白名单配置

拦截特定的攻击请求

通过分析某类特定的WordPress反弹攻击,发现其特征是User-Agent字段都包含WordPress,如下图所示。

因此,可以设置以下精准访问控制规则,拦截该类WordPress反弹攻击请求。

关于WordPress攻击的详细防护配置,请参考防御WordPress反射

封禁特定的URL

如果您遇到有大量IP在刷某个特定且不存在的URL,您可以通过配置以下精准访问控制规则直接阻断所有该类请求,降低源站服务器的资源消耗。

防盗链

通过配置Referer匹配字段的访问控制规则,您可以阻断特定网站的盗链。例如,您发现 abc.blog.sina.com大量盗用本站的图片,您可以配置以下精准访问控制规则阻断相关访问请求。

支持的匹配字段

下表罗列了精确访问控制支持的匹配字段及其描述。
匹配字段 字段描述 适用逻辑符
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类型信息。
  • 包含
  • 不包含
  • 等于
  • 不等于
  • 长度小于
  • 长度等于
  • 长度大于
X-Forwarded-For 访问请求的客户端真实IP。X-Forwarded-For(XFF)用来识别通过HTTP代理或负载均衡方式转发的访问请求的客户端最原始的IP地址的HTTP请求头字段,只有通过HTTP代理或者负载均衡服务器转发的访问请求才会包含该项。
  • 包含
  • 不包含
  • 等于
  • 不等于
  • 长度小于
  • 长度等于
  • 长度大于
  • 不存在
Content-Length 访问请求的响应内容所包含的字节数。
  • 值小于
  • 值等于
  • 值大于
Post-Body 访问请求的响应内容信息。
  • 包含
  • 不包含
  • 等于
  • 不等于
Http-Method 访问请求的方法,如GET、POST等。
  • 等于
  • 不等于
Header 访问请求的头部信息,用于自定义HTTP头部字段。
  • 包含
  • 不包含
  • 等于
  • 不等于
  • 长度小于
  • 长度等于
  • 长度大于
  • 不存在