SDK 签名
Adjust SDK 签名是一款防伪造解决方案,会使用专有的修饰算法,并结合模糊处理和安全检查,保护 Adjust SDK 与 Adjust 服务器的连接。
SDK 签名库的集成非常简便,无需额外代码便可与 Adjust SDK 无缝兼容。
其工作原理是什么?
SDK 签名库并非防作弊引擎,无法预防用户层级的作弊,如应用漏洞滥用、原应用之外资源的篡改或应用逻辑错误。
Adjust SDK 向 Adjust 服务器发送信息时会使用安全传输层协议 (TLS) 来加密信息。TLS 是针对网络流量的行业标准加密协议。虽然 TLS 可以防止作弊者读取您的信息,但无法阻止他们向您的应用终端发送作弊安装或事件数据。
SDK 签名库使用专有的修饰算法,并结合模糊处理和安全检查,保护 SDK 与 Adjust 服务器的连接,确保 Adjust 服务器拒绝其他来源发送的任何信息。服务器会检查所有请求确保签名有效。任何 未签名 或 带有无效签名 的信息都会被拒绝,保证您只接收有效信息。
开始使用
SDK 签名库默认包含在 SDK v5 中。只有 SDK v4 需要安装签名库。
SDK 签名库适用于安卓、iOS 和 Unity。要集成库,请按照下列步骤操作:
- (仅限 SDK v4): 在 GitHub 中下载对应您所用平台的 SDK 签名库。
- 按照平台对应的集成指南操作。
如果您使用的是 Flutter、Cordova 或 React Native,请按照针对 iOS 和安卓的说明,为每个平台分别添加 SDK 签名库支持。不支持其他多平台框架。
- 测试集成,验证集成否能正常运作。
管理您的证书指纹
只有针对 安卓 的应用才需要证书指纹。
将 SDK 签名库集成到应用中后,Adjust SDK 向 Adjust 发送的所有请求都会带有签名。Adjust SDK 还会向 Adjust 服务器发送相关信息,包括您的签名证书指纹。
要获取您的证书指纹,请找到平台对应的指南文档进行操作。
您必须将签名证书的指纹添加至许可名单。如果未将任何指纹添加至许可名单,则来自应用的流量可能会被伪造。
在 Adjust suite 中添加签名
获得证书指纹后,请按照下列步骤操作,将证书指纹加入许可名单:
- 在 AppView 中选中您的应用,打开应用详情界面。
- 选择 数据保护 标签页。
- 点击 可疑安装 部分的 编辑 按钮 ()
- 找到 安卓指纹 部分,选择 新指纹 。
- 将复制好的指纹粘贴入弹出的文本框中。
- 选择 添加 。
- 为每个指纹重复上述步骤,将它们加入许可名单。
一切就绪!您的指纹现已加入应用许可名单。
您必须在 Adjust 中更新证书指纹,才能更新签名指纹。
您可以禁用不需要的指纹。
- 在 AppView 中选中您的应用,打开应用详情界面。
- 选择 数据保护 标签页。
- 点击 可疑安装 部分的 编辑 按钮 ()
- 找到 安卓指纹 部分,选择要禁用的指纹。
- 选择 停用
包含已禁用指纹的流量会被视为可疑流量,并被拒绝。
使用 Automate API 添加签名
如果您使用 Automate API 管理应用,那么可以通过 /app
终端设置安卓签名。请参阅 Automate API 安卓签名设置指南,按照其中的步骤操作,通过 Automate API 向应用添加签名。采用该方法添加的签名会被自动附加在许可名单中。
强制执行签名验证
在应用中集成 SDK 签名库后,您需要在 Adjust 中强制执行签名。否则,所有 SDK 请求都会在未经验证的情况下被直接接受。
Adjust 不会自动强制执行签名验证。这样,您就有足够的时间等待用户下载应用更新,并打开更新后的应用,确保所记录的安装都带有签名。
Adjust 建议您等待约为 2 个归因窗口的时间,然后再执行 SDK 签名。
示例:如果采用 Adjust 默认的 7 天归因窗口,您就应该等待 14 天时间,再执行 SDK 签名。如果有用户在集成密钥前下载了应用,但刚刚首次打开应用,安装就不会带有 SDK 签名。等待一段时间再执行签名,就能确保此类安装依旧能被接受并进行归因。
要执行签名验证,请按照下列步骤操作。
- 在 AppView 中选中您的应用,打开应用详情界面。
- 选择 数据保护 标签页。
- 点击 可疑安装 部分的 编辑 按钮 ()
- 将 拒绝可疑安装 选项设为 "开",强制执行签名验证。
管理您的密钥 ID
密钥 ID 是一种标识符,可用于判断特定平台上使用特定版本签名库的应用。Adjust SDK 发送已签名的请求后,Adjust 就会自动生成密钥 ID。
您可以控制哪些密钥 ID 会被纳入考量,哪些会被放弃。默认情况下,所有密钥 ID 均处于 活动状态 。如果您在执行签名验证时禁用了密钥 ID,那么符合对应 SDK 签名库版本和平台的应用发送的所有请求都会被拒绝。
在下列情况中,Adjust 建议您停用密钥:
- 应用密钥已不再适用于安装报告。
- 您已经在所有应用平台和商店中全面发布了应用的新版本。
停用密钥会立即生效。执行 SDK 签名后,使用已停用的秘钥上报的应用安装将被拒绝,且会被归类为 Untrusted Devices (不受信任设备)。Adjust 会持续跟踪这些设备的会话和事件,但仅在您使用了 Adjust 防作弊套件时,才会于控制面板的报告中显示此信息。
密钥 ID 管理方法:
- 在 AppView 中选中您的应用,打开应用详情界面。
- 选择 数据保护 标签页。
- 点击 可疑安装 部分的 编辑 按钮 ()
- 找到 密钥 界面,进行下列任一操作:
- 选择 禁用 ,停用选定密钥 ID。
- 选择 编辑 ,变更选定密钥 ID 名称。
将 显示已禁用密钥 ID 选项设为 "开",即可查看已被停用的 ID。
更新库
当通过 dependency manager 集成 SDK v5 时,其中默认包含 SDK 签名库。也就是说,刷新依赖时会调取最新版本的库。
除替换库外,您无须对应用进行任何变更。要更新 SDK 签名库,请按此处步骤操作:
其他多平台框架不受官方支持,除与 SDK v5 捆绑的情况。要针对多平台框架更新 SDK 签名库,您可以按照 iOS 和安卓的说明操作。多平台框架的测试则是中立的。