易盾行为式验证码隐私合规指引
数据隐私保护已成为一个重要的社会议题,国家也出台了很多相关政策来保护个人隐私。
网易易盾高度重视用户信息保护,希望通过本文档帮助您了解隐私合规、实现隐私合规,保障您的应用顺利上线。
什么是隐私合规
根据监管要求,在应用需要收集个人信息时,必须向个人信息主体明示个人信息处理目的、方式、范围等,并且形成单独成文的《隐私政策》。
您需确保《隐私政策》的独立性与易读性,并且只能在用户同意《隐私政策》后收集用户的隐私信息。您还需确保第三方服务在《隐私政策》及《第三方共享信息清单》中进行披露。相关详情请参见国家标准文档《信息安全技术-个人信息安全规范》、《信息安全技术-移动互联网应用程序(App)个人信息基本要求》。
实现隐私合规
在应用首次启动时,通过弹窗向客户展示隐私政策概要,并添加《隐私政策》的跳转链接。让用户主动勾选同意后,应用才能进行获取用户个人信息的行为。
完善《隐私政策》
您的应用使用了易盾行为式验证码服务后,相当于接入了三方的SDK,您需要对应用的《隐私政策》作以下完善:
1、确保告知用户您选择行为式验证码服务,在《隐私政策》中添加如下声明:
我们的产品和/或服务可能包括第三方的产品和/或服务,也可能收集并使用您的个人信息。例如,我们为实现行为式验证码服务集成网易易盾 SDK,网易易盾将作为数据处理者,按照本公司的指示收集处理您的数据,网易易盾将按照《网易易盾隐私政策》(https://dun.163.com/clause/privacy)和《网易易盾行为式验证码隐私合规指引》(https://support.dun.163.com/documents/15588062143475712?docId=852266392155979776)所述收集、使用并保护您的个人信息。
2、建议您向用户呈现单独的《第三方共享清单》,并将以下信息添加到该文档中:
(1)在行为式验证码服务中,我们将高效拦截机器行为,建立业务安全第一道防线。为实现上述服务目的,我们需获取最终用户的如下信息:
| 产品 | 操作系统 | 信息类型 | 信息名称 | 处理目的 | 处理方式 | 接入方式 |
|---|---|---|---|---|---|---|
| 行为式验证码 | Android | 设备信息(可选) | 设备品牌、设备名称、设备型号及设备系统类型、详细设置及版本信息 | 检测设备是否处于异常状态 | 加密传输等安全的处理方式 | SDK 接入 |
| 行为式验证码 | Android | 日志信息(必选) | 网络连接类型及状态、IP地址、网络运营商信息 | 检测当前用户是否有异常操作行为 | 加密,不进行传输,存储在本地 | SDK 接入 |
| 行为式验证码 | HarmonyOS | 设备信息(可选) | 设备品牌、设备名称、设备型号及设备系统类型、详细设置及版本信息 | 检测设备是否处于异常状态 | 加密传输等安全的处理方式 | SDK 接入 |
| 行为式验证码 | HarmonyOS | 日志信息(必选) | 网络连接类型及状态、IP地址、网络运营商信息 | 检测当前用户是否有异常操作行为 | 加密,不进行传输,存储在本地 | SDK 接入 |
| 行为式验证码 | Web | 设备信息 | User Agent(含设备品牌、设备名称、设备型号、操作系统类型及版本、IP 地址、DNS 信息、网络连接类型-WiFi/蜂窝网络等) | 检测设备是否处于异常状态,判断设备交互能力、获取客户端真实 IP、获取客户端 DNS 信息、检测网络环境 | 通过 navigator.userAgent 解析,随 API 请求发送;动态加载 nstool.netease.com/ip.js 主动探测,结果随错误上报发送;navigator.userAgent 中解析,Performance API 采集网络时序数据 |
SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | Canvas 2D 指纹(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 生成设备唯一标识,用于人机识别 | 隐藏 canvas 绘制文字,getImageData 提取渲染差异,随 API 请求发送 |
SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | WebGL 指纹(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 生成设备唯一标识,用于人机识别 | 通过 WEBGL_debug_renderer_info 扩展获取 GPU 供应商及渲染器信息,随 API 请求发送 |
SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | 客户端可用字体列表(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 生成设备唯一标识,用于人机识别 | 遍历预定义字体列表,检测客户端已安装字体,随 API 请求发送 | SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | AudioContext 指纹(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 生成设备唯一标识,用于人机识别 | 检测 OfflineAudioContext 支持及音频信号处理特征 |
SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | 屏幕色深(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 生成设备唯一标识,用于人机识别 | screen.colorDepth |
SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | 浏览器插件列表(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 生成设备唯一标识,用于人机识别 | 枚举 navigator.plugins |
SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | 时区及语言(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 生成设备唯一标识,用于人机识别 | 浏览器环境信息 | SDK 接入 |
| 行为式验证码 | Web | 浏览器指纹 | User Agent 一致性检验(来源:finger_print.v3.2.min.js,设备指纹采集模块) | 检测 UA 是否被篡改 | 对比 API 返回的 UA 与 navigator 对象属性是否一致 |
SDK 接入 |
| 行为式验证码 | 微信小程序 | 设备信息 | 设备品牌、设备名称、设备型号及设备系统类型、详细设置及版本信息; 运行环境标识(runEnv:wx/swan/alipay/tt) |
未主动采集(wx.getSystemInfo 返回了以上字段,但代码仅提取 pixelRatio);区分小程序平台 |
常量标识,随 API 请求发送 | SDK 接入 |
| 行为式验证码 | 支付宝小程序 | 设备信息 | 设备品牌、设备名称、设备型号及设备系统类型、详细设置及版本信息; 运行环境标识(runEnv) |
未主动采集(my.getSystemInfo 返回了以上字段,但代码仅提取 pixelRatio);区分小程序平台 |
常量标识,随 API 请求发送 | SDK 接入 |
(2)为实现行为式验证码 SDK 的相应功能,我们将通过您的应用申请开启最终用户设备操作系统的特定权限。具体如下:
| 产品 | 操作系统 | 权限名称 | 使用目的 | 是否可选 | 拒绝的影响 |
|---|---|---|---|---|---|
| 行为式验证码 | Android | android.permission.READ_PHONE_STATE | 允许程序获取设备信息,用于环境风险分析 | 是 | 风险检测效果减弱 |
| 行为式验证码 | Android | android.permission.INTERNET | 允许应用程序联网 | 否 | 无法使用SDK功能 |
| 行为式验证码 | Android | android.permission.ACCESS_WIFI_STATE | 允许访问WiFi网络状态信息 | 否 | 无法使用SDK功能 |
| 行为式验证码 | Android | android.permission.ACCESS_NETWORK_STATE | 允许访问网络状态 | 否 | 无法使用SDK功能 |
| 行为式验证码 | HarmonyOS | ohos.permission.INTERNET | 允许访问网络状态 | 否 | 无法使用SDK功能 |
| 行为式验证码 | HarmonyOS | ohos.permission.GET_NETWORK_INFO | 允许应用获取网络信息 | 否 | 无法使用SDK功能 |


