主要特性
除了为身份验证提供唯一 ID 之外,实例 ID 可以生成用于其他服务的安全令牌。其他功能 包括:
生成安全令牌
- 实例 ID 提供了一个简单的 API 来生成安全令牌, 授权第三方访问应用的服务器端托管资源。
验证应用的真实性
- 将实例 ID 令牌传递到您的服务器并使用实例 ID 服务来验证应用软件包名称并检查其签名是否有效。 使用实例 ID 云服务验证令牌有助于识别 。要减少费用和冗余往返通信,请配置您的 服务器存储这些令牌,因此只需检查一次。 如果出现安全问题,您的应用可以删除令牌,或 实例 ID 本身,并生成新的实例 ID。此外, 如果实例 ID 服务器收到令牌或实例 ID 刷新请求, 来检测错误或安全问题 。
确认应用设备处于活跃状态
- 实例 ID 服务器可以告知您应用 上次使用日期为 。用于决定是否保留 应用或发送推送消息以重新吸引用户。
识别和跟踪应用
- 实例 ID 在全球所有应用实例中是唯一的,因此 您的数据库可以用它来对应用实例进行唯一标识和跟踪。您的 服务器端代码可以通过实例 ID 云服务验证 实例 ID 是真实的,并且与 已向服务器注册为保护隐私,您的应用可以删除实例 ID, 它不再与数据库中的任何历史记录相关联。下次您 应用调用实例 ID,它将获得一个全新的实例 ID, 与前一个对象之间的关系。
实例 ID 生命周期
- 当您的应用上线时,实例 ID 服务会发出
InstanceID
。InstanceID
由公钥/私钥对(其中包含存储的私钥)提供支持。 和向实例 ID 服务注册的公钥。 - 您的应用可以在需要时使用
getID()
请求新的InstanceID
方法。如果您的服务器支持您的服务器,则您的应用可以将其存储在您的服务器上 。 - 您的应用可以根据需要向实例 ID 服务请求令牌
使用
getToken()
方法,并且与InstanceID
一样,您的应用也可以存储 将令牌放在您自己的服务器上。向您的应用发出的所有令牌都属于该应用的InstanceID
。 - 令牌是唯一且安全的,但您的应用或实例 ID 服务 如果出现安全问题或用户 在设备恢复期间卸载并重新安装您的应用。您的应用必须 实现一个监听器,以响应来自 实例 ID 服务。
客户端实现
实例 ID 在 Android 和 iOS 上运行。每种类型都需要包含 您的客户端应用中的相应库Android 要求 Google Play 服务。您需要生成项目 ID Google Developers Console 生成令牌。