Credential Manager 简介

Credential Manager 是 Android 应用中凭据交换的推荐 Jetpack API 。Credential Manager API 可简化各种设备规格的凭据交换,以用于涵盖身份验证和授权的用例。您还可以使用 Credential Manager 处理数字凭据,并在新的 Android 设备上恢复用户凭据。

Credential Manager 特点

Credential Manager 提供了一系列强大的功能,可简化登录流程并提高安全性,包括:

  • 支持各种身份验证机制:让用户能够使用以下方式注册 或登录您的应用:
  • 跨设备凭据恢复:与恢复 凭据集成,让用户能够在新 设备上无缝开始使用您的应用。
  • 与凭据提供程序无缝集成:支持 凭据提供程序,包括密码管理工具(例如 Google 密码管理工具)。
  • 凭据管理:支持更新用户 凭据的元数据,有助于在您的应用和 凭据提供方之间保持凭据一致性。
  • WebView 兼容性:适用于使用 WebView 的应用。
  • 自动填充集成:与自动填充功能集成,以便在自动填充界面中显示 凭据。

使用 Credential Manager 的优势

采用 Credential Manager 可为您的应用和用户带来以下几项关键优势:

  • 提高安全性:通行密钥可提高安全性,并保护用户 免受钓鱼式攻击。
  • 支持各种设备规格:这些 API 适用于各种 Android 设备 规格,包括移动设备、Android XR 设备和 Wear OS 设备。
  • 简化各种用例的身份验证数字凭据, 例如数字驾照、企业 ID 和国民身份证, 支持各种用例的身份验证,包括需要 电话号码验证的用例。
  • 改善用户体验:Credential Manager 的统一界面为 用户提供熟悉且一致的体验,并提高注册和 登录速度。底部动作条界面会与应用内容内嵌显示,因此用户在登录期间仍处于应用的情境中。下图显示了 Credential Manager 的内置界面:
通行密钥、密码和联合登录的 Credential Manager 界面
图 1. Credential Manager 的内置统一界面,用于通行密钥、密码和联合登录

身份验证术语

需要对其用户进行身份验证的实体称为依赖方 。身份验证工作流通常包含以下组件:

  • 依赖方客户端应用:客户端(在本例中为您的 Android 应用),用于处理界面以创建和使用通行密钥。
  • 依赖方服务器:应用服务器,用于帮助创建、 存储和验证通行密钥。
  • 凭据提供程序:用于存储和提供用户 凭据的组件,例如 Google 密码管理工具。请注意, FIDO 文档将凭据提供程序称为 Credential Manager。

凭证存储空间

凭据提供程序(例如 Google 密码管理工具)为用户提供了一个集中且安全的位置来管理其设备上的凭据,从而进一步简化了身份验证流程。如需以 凭据提供程序身份与 Credential Manager 集成,请参阅 以凭据提供程序身份实现身份验证

如需详细了解 Google 密码管理工具如何确保凭据 安全,请参阅 Google 密码管理工具中的通行密钥的安全性

迁移至 Credential Manager

Credential Manager 旨在取代旧版 Android 身份验证 API 和本地 FIDO2 凭据。如需详细了解如何迁移至 Credential Manager,请参阅以下指南: