身份配置(或账号配置)是指设置账号并在保存用户数据的三个系统之间建立连接的过程,在某些情况下,还包括在用户与其设备之间建立连接。
在 Android 企业环境中,有三个不同的系统会保存用户账号信息:
- 组织的用户目录是有关用户的权威信息来源。
- 您(EMM 解决方案提供商)必须维护至少包含组织用户的最简目录。
- Google 会保留有关 Google Play 企业版账号和 Google 账号的一些信息,以便通过 Google Play 提供应用管理服务。
Users
资源表示与企业关联的账号。账号可以专用于特定设备,也可以与拥有多部设备并在所有设备上使用该账号的个人相关联。该账号可以仅提供对受管理的 Google Play 的访问权限,也可以提供对其他 Google 服务的访问权限,具体取决于您如何设置客户的企业:
受管理的 Google 账号是由 Google 管理的现有账号。这些账号要求客户使用 Google 作为其身份提供方,或将其组织的的用户目录与 Google 相关联。对于使用受管 Google 账号的企业,Google 负责在设备配置期间对用户进行身份验证。
Google Play 企业版账号可让企业通过其企业移动管理 (EMM) 解决方案提供商自动创建受限的用户账号。这些账号仅提供对 Google Play 企业版的访问权限。EMM 全面负责在需要时对用户进行身份验证。对于 Google Play 企业版账号集,这是唯一可用的账号类型。
表 1:Users API 字段和方法
Google Play 企业版账号 | 受管理的 Google 账号 | |
---|---|---|
字段 | ||
id | ||
kind | ||
accountIdentifier | 您创建并映射到 Google Play 返回的 ID (userId ) 的唯一标识符。请勿使用个人身份信息 (PII)。 | 未设置。 |
accountType | deviceAccount、userAccount | userAccount |
displayName | 您在界面项(例如 Google Play 中)显示的名称。请勿使用个人身份信息。 | 未设置。 |
managementType | emmManaged | googleManaged、emmManaged |
primaryEmail | 未设置。 | 此字段是您用于管理从 Google 管理的网域账号到您系统中的用户账号的同步的主键。 |
方法 | ||
删除 | ||
generateAuthenticationToken | ||
generateToken | ||
get | ||
getAvailableProductSet | ||
insert | ||
list | ||
revokeToken | ||
setAvailableProductSet | ||
update |
为了改进设备注册流程,我们正在过渡到为所有使用公司身份的员工所用的 Android Enterprise 设备使用受管理的 Google 账号。
对于新注册的设备,我们现在建议使用受管理的 Google 账号,而不是受管理的 Google Play 账号。虽然我们会继续为现有用户提供受管理的 Google Play 账号支持,但这些账号只能用于访问受管理的 Google Play 商店。 受管理的 Google 账号可让用户访问全套 Google 服务和跨设备功能。
改进了注册流程
受管理的 Google 账号用于向 Google 验证用户身份。这可实现跨设备体验,例如任务切换、通知和附近分享。在企业领域,用户经常使用多台设备,因此这些功能变得越来越重要。
我们现在强烈建议未使用 Google 作为身份提供商的企业将其现有身份提供商与 Google 相关联。这样一来,在绑定过程中,您就可以为员工创建受管理的 Google 账号。 企业应使用与 EMM 相同的身份提供商。
我们已实施以下更改:
设备注册期间的最终用户身份验证现在由 Google/Android 处理。EMM 的设备政策控制器 (DPC) 要求 Android 在适当的时间点对用户进行身份验证,然后 Android 将已登录用户的身份返回给 DPC。
EMM 在请求用户身份验证时,必须向 Android 传递注册令牌。此令牌由对 Android Enterprise API 的 API 调用返回,并且可能编码在 QR、NFC 或零触摸注册载荷中。
虽然 Android 现在可以处理身份验证并将用户身份提供给 EMM,但 EMM 仍有责任将用户身份映射到正确的群组或组织结构。此映射对于向设备应用适当的政策至关重要。因此,企业必须继续将其组织的用户目录关联到其 EMM。
IT 管理员可以启用或停用 Google 提供的全新最终用户身份验证功能。为了向用户提供最佳体验(包括跨设备功能),我们建议 IT 管理员将组织的的用户目录关联到 Google。如果不进行关联,用户将拥有受管理的 Google Play 账号,但无法获享跨设备体验。
所有 EMM 都必须满足一项新要求,即在创建注册和登录令牌时提供额外信息。具体而言,您现在必须指明设备是否为无用户设备(例如自助服务终端或专用设备)。
优势
新流程具有以下主要改进:
简化注册:与标准方法相比,它减少了手动步骤的数量并降低了复杂性。
Google 账号支持:您现在可以使用所有配置方法来使用 Google 账号。这样就不再需要受管理的 Google Play 账号。
用户体验更佳:借助受管理的 Google 账号,您可以获得更丰富的 Android 体验,包括强大的跨设备功能,例如共享和复制粘贴。
用户账号的实现
如需了解如何继续完成此新注册流程,请参阅实现用户账号。
受管理的 Google 账号的生命周期
对于使用 Google 账号的组织,EMM 解决方案中的用户账号会镜像与另一项 Google 服务(例如 Google Workspace)关联的现有用户账号。这些账号属于 googleManaged
(表 1),因为 Google 的后端服务是账号创建和相关信息的来源。
作为 EMM,您可以在控制台中提供相应机制,以便使用 Google Cloud Directory Sync (GCDS) 和 Google Admin SDK Directory API 等工具,轻松创建并持续同步您系统中的用户账号及其 Google 网域账号来源。如需各种方法的概览,请参阅。在 Google 管理的网域身份模型中,用户账号必须先存在于解决方案(EMM 控制台、EMM 服务器,可能在数据存储区中)的上下文中,然后才能在工作资料的上下文中预配到用户的任何设备上。
在身份配置期间,组织由 Google 管理的网域会填充用户账号。在某些情况下,用户的现有在线身份(例如 Microsoft Exchange 账号)会与其 Google 账号同步。
同步客户账号
在 Google 账号部署中,组织可以使用 GCDS 工具将其 G Suite 网域中的数据与 LDAP 目录中的数据同步。或者,如果组织授予您相应权限,您也可以使用 GCDS 代表组织执行此操作。
GCDS 工具会调用 Google Directory API 并同步用户名,但不会同步密码。
如果组织使用 Microsoft Active Directory,并希望将用户的 G Suite 密码与其 Active Directory 密码保持同步,那么组织或您可以使用 G Suite Password Sync (GSPS) 工具与 GCDS 搭配使用。
有关面向管理员的 GCDS 说明,请参阅为 G Suite 网域做好同步准备。
Google Directory API
在 Google 账号部署中,您可以使用 Google Directory API 同步 Active Directory、密码或两者:
使用 Directory API 进行仅限目录的同步。 如果您对组织的受管理的 Google 网域拥有只读访问权限,则可以使用 Google Directory API 从 Google 获取 Google 账号信息,例如用户名(但不能获取密码)。由于您无法将任何数据写入用户的 Google 账号,因此组织完全负责账号生命周期。
场景 1 和基于 SAML 的 SSO 身份验证场景更全面地描述了这种情况。
如需了解如何以这种方式使用 Directory API,请参阅 Directory API 文档中的检索所有账号用户。
使用 Directory API 进行目录同步和可选的密码同步。 如果您对组织的受管理 Google 网域拥有读写权限,则可以使用 Google Directory API 获取用户名、密码和其他 Google 账号信息。您可以更新此信息并将其与您自己的数据库同步,并且您可能需要对账号生命周期承担全部或部分责任,具体取决于您向客户提供的解决方案。
场景 2 更全面地描述了这种情况。
如需详细了解如何使用 Directory API 管理用户账号信息,请参阅开发者指南:Directory API - 用户账号。
Google 账号使用场景
以下部分介绍了几个典型的 Google 账号身份配置场景。
方案 1:客户负责账号生命周期
在这种情况下,您的客户会为其用户创建和维护 Google 账号。
您可以从组织的 LDAP 目录中获取用户账号信息,并使用 Google Directory API 将此信息与从 Google 获取的 Google 账号数据相关联。
组织对账号生命周期负有完全责任。例如,当创建新的 Google 账号时,组织会将用户添加到其 LDAP 目录中。下次将数据库与 LDAP 目录同步时,您的数据库会收到有关此新用户的信息。
在这种情况下:
- 您仅拥有对 Google 账号的只读权限。
- 您的数据库会获取 Google 账号名称,但不会获取 LDAP 用户名或密码。
- 您可以使用 Google Directory API 获取客户用户的基本账号信息。(您可获取的信息是
Users.get
请求返回的不可写入的信息)。您可以使用此信息来验证用户的 Google 账号是否存在,以便用户可以向其设备进行身份验证。 - 您的客户使用 GCDS 工具进行单向同步,以填充用户的 Google 账号。(组织可能还会使用 GCDS 在身份配置完成后进行持续同步。) 组织还可以选择使用 GSPS 工具来同步用户名和密码。
方案 2:EMM 负责账号生命周期
在这种情况下,您需要代表客户处理 Google 账号创建流程,并负责用户账号的生命周期。
例如,当组织 LDAP 目录中的用户信息发生变化时,您负责更新用户的 Google 账号。在此方案中,不使用 GCDS。
在这种情况下:
- 您对 Google 账号拥有读写权限。
- 您的数据库会获取 Google 账号名称和 LDAP 用户名(以及可选的密码哈希值)。
- 您代表客户使用 Google Directory API 读取和写入组织用户的账号信息。(您可获取的信息是
Users.get
请求返回的不可写入信息)。您可以使用此信息来验证用户的 Google 账号是否存在,以便用户可以向其设备进行身份验证。 - 不使用 GCDS 工具。
基于 SAML 的单点登录身份验证方案
在 Google 账号部署中,您或您的客户可能会将安全断言标记语言 (SAML) 与身份提供方 (IdP) 搭配使用,以对与每位用户关联的 Google 账号进行身份验证。您可以使用 Google 账号名称来验证用户的 Google 账号是否存在,这对于用户登录设备时的用户身份验证是必需的。例如,SAML 可用于方案 2。如需详细了解如何进行此设置,请参阅为 G Suite 账号设置单点登录 (SSO)。