通过分析一段时间内客户端访问资源类型的分布,或者设置前置请求条件限制,对不符合正常业务流的请求予以处置。业务流分析支持如下典型场景:
- Web场景:对于动态静态文件未做分离的域名,正常用户的访问资源类型的分布通常是分散的。而Bot为提升效率,通常只会访问动态接口,而不请求静态资源。利用该机制,业务流检测会分析一段时间内客户端访问资源类型的分布,识别不符合正常业务流的请求并拦截。
- API场景:用户访问某个API接口通常会有必要的前置请求,比如订票业务:发起下单请求前通常会有查询票务、确认订单等前置请求。而Bot通常为提升下单效率,会直接发起下单请求。利用该机制,业务流检测会分析一段时间内客户端访问的URL类型分布,识别不符合正常业务流的请求并拦截。
配置示例
网站http://www.test.com/情况如下:
- 网站管理者不希望网站的订票接口/booking.do被直接访问,300s内必须先访问过登录前的验证码获取接口/get_verification。
按照上述场景,控制台配置如下:
- 在防护配置>安全策略>Bot管理下,启用业务流检测。
- 展开业务流检测折叠面板,创建如下规则并点击确定。
- 规则名称:订票场景
- 防护路径:/booking.do
- 应用场景:API场景
- 触发条件:
在[300]秒之内[IP]的访问行为同时满足:
1:自定义URL请求次数 完整匹配 /get_verification 小于 1
2:自定义URL请求次数 完整匹配 /booking.do 大于等于 1
- 找到上述创建的规则,将处理动作设置为拦截。
- 点击页面下方的部署按钮,在确认变更信息页,点击预部署按钮,按照页面提示信息进行验证,确保配置的规则符合预期。
- 重新配置上述规则,点击页面下方的部署按钮,并在确认变更信息页点击直接部署,以使配置生效。