一、模块执行顺序
请求按以下顺序依次经过各安全模块:
| 顺序 | 模块 | 说明 |
| 1 | 防护例外规则 | 匹配后跳过指定的后续安全模块或规则 |
| 2 | 自定义规则 | 基于 IP、地域、请求特征等条件执行处置 |
| 3 | 速率限制 | 统计请求频率,超过阈值时执行处置 |
| 4 | 平台托管的速率限制规则(原 CC 攻击防护) | 自适应频控、智能客户端过滤等由 EO 平台托管的规则 |
| 5 | Bot 管理 | 识别和管理 Bot 流量 |
| 6 | 托管规则 | 基于预置规则集检测常见 Web 攻击 |
二、终止性处置动作 与 非终止性处置动作
处置方式分为两类,它们对请求处理链路的影响不同:
·终止性处置动作(拦截、封禁 IP、JS 挑战、托管挑战、重定向、返回指定页面):立即结束请求处理,后续模块不再执行。
·非终止性处置动作(放行、观察):请求继续进入后续模块检查。
注意:“放行”是非终止性处置,仅表示请求通过了当前模块。例如在自定义规则中配置"放行"后,请求仍会继续进入速率限制、CC 攻击防护、Bot 管理、托管规则等后续模块。如果后续模块对请求执行了终止性处置,请求仍然会被拦截。如需让特定请求跳过后续安全模块的检查,请使用 防护例外规则。
三、自定义规则与速率限制
·自定义规则和速率限制模块中包含多条规则时,按优先级从高到低匹配(优先级数值越小,优先级越高)。高优先级规则执行终止性处置后,本模块内剩余规则不再匹配。
·当多条规则优先级相同时,按以下处置方式顺序执行:观察 → 放行 → 托管挑战 → JS 挑战 → 重定向 → 返回指定页面 → 封禁 IP → 拦截
四、CC 攻击防护
请求匹配多条规则时,所有匹配的规则均生效。
五、速率限制的计数机制
命中的所有规则均独立计数,某条规则触发处置不影响其他规则的计数。
六、防护例外规则 vs 自定义规则“放行”
| 对比项 | 防护例外规则 | 自定义规则“放行”动作 |
| 执行位置 | 模块 1(最先执行) | 模块 2 |
| 作用范围 | 跳过后续指定模块或规则的检查 | 仅通过自定义规则模块 |
| 后续模块 | 被指定跳过的模块或规则不会检查该请求,其他模块或规则正常检查 | 后续模块正常检查 |
七、相关文档
·处置方式