全部产品
Search
文档中心

Web 应用防火墙:Web应用集成SDK

更新时间:Jul 28, 2026

您必须在应用中集成SDK,才能配置网页防爬场景化规则。本文介绍了如何为Web应用集成WAF防护SDK(以下简称SDK)。

组件

Web SDK集成包括Web采集器、异步接口响应组件。

Web采集器

Web采集器将客户端浏览器或容器环境下的特征纳入整体antibot攻防体系,进一步识别出多种网络层特征无法覆盖的攻击手法,提升攻防效果。

Web采集器采集到的特征经过混淆加密后,在根域名下植入cookie,并通过请求上报,对性能影响较小。

Web采集器采集的内容主要分为三部分:

  • 浏览器或容器环境信息:常见的如浏览器型号版本、屏幕分辨率、时区特性与时间戳等。

  • 特定攻防探针:主要是针对一些常见的浏览器级别Bot脚本、driver、自动化容器的探针。

  • 用户操作行为:主要指用户在页面上的鼠标、键盘、触屏事件。

    说明

    出于隐私考虑,键盘只会采集击键时间,不会采集具体按下了哪个键。

异步接口响应组件

异步接口响应组件使Web应用程序能在API接口上响应antibot攻防体系下发给客户端的挑战(目前包括JS校验和Captcha挑战)。采用此组件后,如果WAF给某一API接口下发挑战response,异步接口响应组件探测到该挑战response后,会作出响应。

异步接口响应组件为纯功能性组件,不涉及任何安全功能,不会进行任何数据采集或上报。

异步接口响应组件工作原理如下:

  1. 异步接口响应组件会全局重写页面上的xmlHttpRequest(xhr)、Fetch、Form等通用的API接口请求对象,在API接口请求对象上额外封装一层代码,不会影响原始对象的各种特性。

  2. Hook完毕后,异步接口响应组件会先于页面上的其他JS代码,判断请求的response是否为WAF返回客户端的挑战类处置手段(JS校验与captcha挑战)。

  3. 如果发现response并非WAF返回(而是源站返回),异步接口响应组件不会执行任何响应,会把response处理权限向下透传给网站本身的JS代码。如果发现response是WAF返回的,异步接口响应组件会解析返回的response中的算法内容、执行WAF要求的JS运算、并在运算之后携带JS校验验证签名重新发起请求。该重新发起的请求会被WAF验签放过,成功回源。

兼容性说明

  • 环境兼容性:兼容IE8内核以上各类浏览器与客户端容器。

  • 兼容性依赖:客户端请求可以正常携带cookie上报。容器或请求本身不支持cookie,则组件功能会被影响。

  • Hook兼容:对于一些特殊业务,异步API接口的请求本身采用的hook原生XHR、form、Fetch等对象会与异步接口响应组件产生冲突。

集成方式

登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地非中国内地。在左侧导航栏,选择防护配置 > BOT管理 > Bot防护模板,进入Web防护 > WebSDK集成列表页签。

阿里云提供基于 JavaScript 的 Web SDK,用于增强浏览器环境下的防护能力并解决兼容性问题。系统支持以下两种集成模式:

  • 自动集成:一键开启,无需修改业务代码。

  • 手动集成:适用于 FC、SAE 等不支持自动注入的场景,需手动配置代码。

自动集成

WebSDK集成列表页签中,查看已自动集成的防护对象。可在此页面关闭集成或调整灰度比例。

说明
  • 开启自动集成后,系统将在防护对象的 HTML 页面中自动注入 SDK。该 SDK 主要用于采集浏览器环境信息、黑产工具探针数据及用户操作行为日志(不包含个人敏感信息),以增强防护能力。

  • 同时,系统会在 HTTP 响应报文的 Header 中植入 ssxmod_itnassxmod_itna2ssxmod_itna3 等 Cookie,用于获取客户端浏览器指纹。采集的指纹信息包括 HTTP 报文 Host 字段、浏览器窗口高度与宽度等特征数据。

手动集成

WebSDK集成列表页签中,然后单击说明中的获取SDK链接。请将获取到的<script>节点置于页面上其他所有<script>节点之前以保证最先加载。