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

背景信息

精准访问控制规则由匹配条件与匹配动作构成。在创建规则时,您通过设置匹配字段、逻辑符和相应的匹配内容定义匹配条件,并针对符合匹配条件规则的访问请求定义相应的动作。

匹配条件

匹配条件包含匹配字段、逻辑符、匹配内容。匹配内容暂时不支持通过正则表达式描述,但允许设置为空值。

匹配动作

精准访问控制规则支持以下匹配动作:
  • 阻断:阻断命中匹配条件的访问请求。
  • 放行:放行命中匹配条件的访问请求。
  • 挑战:通过挑战算法对命中匹配条件的访问请求的源IP地址发起校验。

规则匹配顺序

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

注意事项
  • 精准访问控制规则存在规则数限制。
    • 标准功能套餐实例:针对每个接入防护的网站域名业务支持配置最多五条规则,且仅支持使用IP、URL、Referer、User-Agent字段作为匹配字段。
    • 增强功能套餐实例:针对每个接入防护的网站域名业务支持配置最多十条规则。
  • 精准访问控制规则的优先级遵循其在规则列表中的排列顺序,排序越靠前,优先级越高。如果一个请求同时命中多个匹配条件,则匹配动作取所有命中的规则中,排序最靠前的访问控制规则中的匹配动作。

操作步骤

  1. 登录DDoS高防(国际)管理控制台
  2. 定位到防护设置 > CC防护策略
  3. 选择需要设置精准访问控制规则的域名(以example.aliyundemo.com为例),开启精准访问控制开关。

  4. 在精准访问控制的操作区域,单击设置进行规则配置。以下图为例,配置完成后,对于/index.php页面,UserAgent字段中包含MSIE的请求将被拦截。

    支持的匹配字段
    说明 标准功能套餐的DDoS高防(国际)实例仅支持使用IP、URL、Referer、User-Agent字段作为匹配字段。
    匹配字段 字段描述 适用逻辑符
    ip 访问请求的来源IP。
    • 属于
    • 不属于
    uri 访问请求的URI地址。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于
    user-agent 发起访问请求的客户端浏览器标识等相关信息。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于
    Cookie 访问请求中的携带的Cookie信息。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于
    • 不存在
    referer 访问请求的来源网址,即该访问请求是从哪个页面跳转产生的。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于
    • 不存在
    content-type 访问请求指定的响应HTTP内容类型,即MIME类型信息。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于
    x-forwarded-for 访问请求的客户端真实IP。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于
    • 不存在
    content-length 访问请求的所包含的字节数。
    • 值小于
    • 值等于
    • 值大于
    post-body 访问请求的内容信息。
    • 包含
    • 不包含
    • 等于
    • 不等于
    http-method 访问请求的方法,如GET、POST等。
    • 等于
    • 不等于
    header 访问请求的头部信息,用于自定义HTTP头部字段及匹配内容。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于
    • 不存在
    params 访问请求的URL地址中的参数部分,通常指URL中”?”后面的部分。例如,www.abc.com/index.html?action=login中的action=login就是参数部分。
    • 包括
    • 不包括
    • 等于
    • 不等于
    • 长度小于
    • 长度等于
    • 长度大于

    其他配置示例

    您可以参考以下精准访问控制规则的配置示例进行配置。
    • 拦截特定的攻击请求
      一般情况下,正常业务不存在POST根目录的请求信息。如果被CC攻击时,发现客户端的请求中存在大量的POST根目录请求,可以评估请求的合法性。如果确认其为非正常业务请求,可以通过精准访问控制规则,执行拦截动作。规则配置示例如下:

    • 拦截一段时间内爬虫的访问请求
      如果在某段时间内,您发现网站的访问流量,有大量爬虫请求,若不排除是攻击肉鸡模拟爬虫进行CC攻击,则可以对爬虫的请求执行拦截操作。

  5. 完成配置后,单击确定,配置生效。