教程:为 G Suite 配置自动用户预配
本教程介绍了在 G Suite 和 Microsoft Entra ID 中配置自动用户预配所需的步骤。 配置后,Microsoft Entra ID 会使用 Microsoft Entra 预配服务自动将用户和组预配到 G Suite 以及取消预配。 有关此服务的功能、工作原理以及常见问题的重要详细信息,请参阅使用 Microsoft Entra ID 自动将用户预配到 SaaS 应用程序和取消预配。
注意
本教程介绍在 Microsoft Entra 用户预配服务之上构建的连接器。 有关此服务的功能、工作原理以及常见问题的重要详细信息,请参阅使用 Microsoft Entra ID 自动将用户预配到 SaaS 应用程序和取消预配。
支持的功能
- 在 G Suite 中创建用户
- 如果用户不再需要访问权限,请删除 G Suite 中的用户(注意:从同步范围中删除用户不会导致在 GSuite 中删除该对象)
- 使用户属性在 Microsoft Entra ID 和 G Suite 之间保持同步
- 在 G Suite 中预配组和组成员身份
- 单一登录到 G Suite(推荐)
先决条件
本教程中概述的方案假定你已具有以下先决条件:
- 一个 Microsoft Entra 租户
- 以下角色之一:应用程序管理员、云应用程序管理员或应用程序所有者。
- G Suite 租户
- G Suite 中具有管理员权限的用户帐户。
步骤 1:规划预配部署
- 了解预配服务的工作原理。
- 决定谁在预配范围中。
- 确定在 Microsoft Entra ID 与 G Suite 之间映射的数据。
步骤 2:配置 G Suite 以支持使用 Microsoft Entra ID 进行预配
使用 Microsoft Entra ID 为 G Suite 配置自动用户预配之前,需要在 G Suite 上启用 SCIM 预配。
使用管理员帐户登录到 G Suite 管理控制台,然后点击“主菜单”,选择“安全”。 如果未看见,可能隐藏在“显示更多”菜单下。
导航到“安全性 ->访问和数据控制 - >API 控制”。选中“信任内部的域应用程序”复选框,然后单击“保存”
重要
对于要预配到 G Suite 的每个用户,他们在 Microsoft Entra ID 中的用户名必须绑定到自定义域。 例如,G Suite 不会接受 bob@contoso.onmicrosoft.com 之类的用户名, 但会接受 bob@contoso.com。 可以按照此处的说明来更改现有用户的域。
使用 Microsoft Entra ID 添加并验证所需的自定义域后,必须使用 G Suite 再次验证它们。 若要在 G Suite 中验证域,请参阅以下步骤:
在 G Suite 管理控制台中,导航到“帐户 - >域 - >管理域”。
在“管理域”页中,单击“添加域”。
在“添加域”页中,键入要添加的域名。
选择“添加域并开始验证”。 然后按步骤验证所拥有的域名。 有关如何通过 Google 来验证域的完整说明,请参阅验证站点所有权。
对要添加到 G Suite 的其他任何域重复上述步骤。
接下来,确定要用于在 G Suite 中管理用户预配的管理员帐户。 导航到“帐户->管理员角色”。
对于该帐户的“管理员角色”,编辑该角色的“特权”。 请确保启用该帐户的所有“管理员 API 权限”,使其可用于预配。
步骤 3:从 Microsoft Entra 应用程序库中添加 G Suite
从 Microsoft Entra 应用程序库中添加 G Suite,开始管理到 G Suite 的预配。 如果之前为 G Suite 设置过 SSO,可使用同一应用程序。 但建议你在最初测试集成时创建一个单独的应用。 若要详细了解如何从库中添加应用,可以单击此处。
步骤 4:定义谁在预配范围内
借助 Microsoft Entra 预配服务,可根据对应用程序的分配和/或用户/组的属性来限定谁在预配范围内。 如果选择根据分配来限定要将谁预配到应用,可按照以下步骤将用户和组分配到应用程序。 如果选择仅根据用户或组的属性来限定要对谁进行预配,可使用此处所述的范围筛选器。
先小部分测试。 在向全员推出之前,请先使用少量的用户和组进行测试。 如果预配范围设置为分配的用户和组,则可以先尝试将一两个用户或组分配到应用。 当预配范围设置为所有用户和组时,可以指定基于属性的范围筛选器。
如果你需要其他角色,可以更新应用程序清单以添加新角色。
步骤 5:配置对 G Suite 的自动用户预配
本部分逐步介绍了如何配置 Microsoft Entra 预配服务,以根据 Microsoft Entra ID 中的用户和/或组分配在 TestApp 中创建、更新和禁用用户和/或组。
注意
若要详细了解 G Suite Directory API 终结点,请参阅 Directory API 参考文档。
若要在 Microsoft Entra ID 中为 G Suite 配置自动用户预配,请执行以下操作:
至少以云应用程序管理员身份登录到 Microsoft Entra 管理中心。
浏览到“标识”>“应用程序”>“企业应用程序”。
在应用程序列表中,选择“G Suite”。
选择“预配”选项卡。单击“入门”。
将“预配模式”设置为“自动”。
在“管理员凭据”部分下,单击“授权”。 你会在新的浏览器窗口中重定向到 Google 授权对话框。
确认想要授权 Microsoft Entra 对你的 G Suite 租户进行更改。 选择“接受”。
选择“测试连接”,以确保 Microsoft Entra ID 可以连接到 G Suite。 如果连接失败,请确保 G Suite 帐户具有管理员权限,然后重试。 然后再次重试“授权”步骤。
在“通知电子邮件”字段中,输入应接收预配错误通知的个人或组的电子邮件地址,并选中“发生故障时发送电子邮件通知”复选框 。
选择“保存”。
在“映射”部分下,选择“预配 Microsoft Entra 用户”。
在“属性映射”部分,查看从 Microsoft Entra ID 同步到 G Suite 的用户属性。 选择“保存”按钮以提交任何更改 。
注意
GSuite Provisioning 目前仅支持使用 primaryEmail 作为匹配属性。
属性 | 类型 |
---|---|
primaryEmail | 字符串 |
relations.[type eq "manager"].value | 字符串 |
name.familyName | 字符串 |
name.givenName | 字符串 |
已挂起 | 字符串 |
externalIds.[type eq "custom"].value | 字符串 |
externalIds.[type eq "organization"].value | 字符串 |
addresses.[type eq "work"].country | 字符串 |
addresses.[type eq "work"].streetAddress | 字符串 |
addresses.[type eq "work"].region | 字符串 |
addresses.[type eq "work"].locality | 字符串 |
addresses.[type eq "work"].postalCode | 字符串 |
emails.[type eq "work"].address | 字符串 |
organizations.[type eq "work"].department | 字符串 |
organizations.[type eq "work"].title | 字符串 |
phoneNumbers.[type eq "work"].value | 字符串 |
phoneNumbers.[type eq "mobile"].value | 字符串 |
phoneNumbers.[type eq "work_fax"].value | 字符串 |
emails.[type eq "work"].address | 字符串 |
organizations.[type eq "work"].department | 字符串 |
organizations.[type eq "work"].title | 字符串 |
addresses.[type eq "home"].country | 字符串 |
addresses.[type eq "home"].formatted | 字符串 |
addresses.[type eq "home"].locality | 字符串 |
addresses.[type eq "home"].postalCode | 字符串 |
addresses.[type eq "home"].region | 字符串 |
addresses.[type eq "home"].streetAddress | 字符串 |
addresses.[type eq "other"].country | 字符串 |
addresses.[type eq "other"].formatted | 字符串 |
addresses.[type eq "other"].locality | 字符串 |
addresses.[type eq "other"].postalCode | 字符串 |
addresses.[type eq "other"].region | 字符串 |
addresses.[type eq "other"].streetAddress | 字符串 |
addresses.[type eq "work"].formatted | 字符串 |
changePasswordAtNextLogin | 字符串 |
emails.[type eq "home"].address | 字符串 |
emails.[type eq "other"].address | 字符串 |
externalIds.[type eq "account"].value | 字符串 |
externalIds.[type eq "custom"].customType | 字符串 |
externalIds.[type eq "customer"].value | 字符串 |
externalIds.[type eq "login_id"].value | 字符串 |
externalIds.[type eq "network"].value | 字符串 |
gender.type | 字符串 |
GeneratedImmutableId | 字符串 |
标识符 | 字符串 |
ims.[type eq "home"].protocol | 字符串 |
ims.[type eq "other"].protocol | 字符串 |
ims.[type eq "work"].protocol | 字符串 |
includeInGlobalAddressList | 字符串 |
ipWhitelisted | 字符串 |
organizations.[type eq "school"].costCenter | 字符串 |
organizations.[type eq "school"].department | 字符串 |
organizations.[type eq "school"].domain | 字符串 |
organizations.[type eq "school"].fullTimeEquivalent | 字符串 |
organizations.[type eq "school"].location | 字符串 |
organizations.[type eq "school"].name | 字符串 |
organizations.[type eq "school"].symbol | 字符串 |
organizations.[type eq "school"].title | 字符串 |
organizations.[type eq "work"].costCenter | 字符串 |
organizations.[type eq "work"].domain | 字符串 |
organizations.[type eq "work"].fullTimeEquivalent | 字符串 |
organizations.[type eq "work"].location | 字符串 |
organizations.[type eq "work"].name | 字符串 |
organizations.[type eq "work"].symbol | 字符串 |
OrgUnitPath | 字符串 |
phoneNumbers.[type eq "home"].value | 字符串 |
phoneNumbers.[type eq "other"].value | 字符串 |
websites.[type eq "home"].value | 字符串 |
websites.[type eq "other"].value | 字符串 |
websites.[type eq "work"].value | 字符串 |
在“映射”部分下,选择“预配 Microsoft Entra 组”。
在“属性映射”部分,查看从 Microsoft Entra ID 同步到 G Suite 的组属性。 选为“匹配”属性的特性用于匹配 G Suite 中的组以执行更新操作。 选择“保存”按钮以提交任何更改。
Attribute 类型 电子邮件 字符串 成员 String name 字符串 description 字符串 若要配置范围筛选器,请参阅范围筛选器教程中提供的以下说明。
若要为 G Suite 启用 Microsoft Entra 预配服务,请在“设置”部分将“预配状态”更改为“开”。
通过在“设置”部分的“范围”中选择所需的值,定义要预配到 G Suite 的用户和/或组 。
在已准备好预配时,请单击“保存”。
此操作会对“设置”部分的“范围”中定义的所有用户和组启动初始同步周期 。 初始周期执行的时间比后续周期长,只要 Microsoft Entra 预配服务正在运行,后续周期大约每 40 分钟就会进行一次。
注意
如果用户已有使用 Microsoft Entra 用户电子邮件地址的现有个人/使用者帐户,则可能会导致每个问题,可以在执行目录同步之前使用 Google 传输工具解决该问题。
步骤 6:监视部署
配置预配后,请使用以下资源来监视部署:
故障排查提示
- 从同步范围中移除用户将在 GSuite 中禁用该用户,但不会在 G Suite 中删除该用户
使用 PIM 对组进行实时 (JIT) 应用程序访问
借助 PIM for Groups,可提供对 Google Cloud/Google Workspace 中的组的实时访问,并减少对 Google Cloud/Google Workspace 中的特权组具有永久访问权限的用户数。
为企业应用程序配置 SSO 和预配
- 将 Google Cloud/Google Workspace 添加到租户,按照教程中所述对其进行配置,然后开始预配。
- 为 Google Cloud/Google Workspace 配置单一登录。
- 创建一个组,该组为所有用户提供应用程序访问权限。
- 将组分配至 Google Cloud/Google Workspace 应用程序。
- 将测试用户分配为在上一步中创建的组的直接成员,或通过访问包向他们提供对组的访问权限。 此组可用于 Google Cloud/Google Workspace 中的持久非管理员访问。
为组启用 PIM
- 在 Microsoft Entra ID 中创建第二个组。 通过此组,可获得 Google Cloud/Google Workspace 中的管理员权限。
- 将该组置于 Microsoft Entra PIM 中的管理之下。
- 将测试用户分配为符合 PIM 中组的条件,并将角色设置为成员。
- 将第二个组分配至 Google Cloud/Google Workspace 应用程序。
- 使用按需预配在 Google Cloud/Google Workspace 中创建组。
- 登录到 Google Cloud/Google Workspace,并为第二个组分配执行管理任务所需的权限。
现在,符合 PIM 中组条件的最终用户都可通过激活其组成员身份来实现对 Google Cloud/Google Workspace 中的组的 JIT 访问。 分配过期后,将从 Google Cloud/Google Workspace 中的组中删除该用户。 在下一个增量周期期间,预配服务会尝试再次从组中删除该用户。 这可能会导致预配日志出错。 由于组成员身份已被删除,因此会出现此错误。 可以忽略该错误消息。
- 将用户预配到应用程序需要多长时间?
- 如果用户被添加到 Microsoft Entra ID 中的组,但未使用 Microsoft Entra ID Privileged Identity Management (PIM) 激活其组成员身份:
- 组成员身份在下一个同步周期期间在应用程序中进行配置。 同步周期每 40 分钟运行一次。
- 如果用户在 Microsoft Entra ID PIM 中激活了其组成员身份:
- 组成员身份将在 2-10 分钟内配置完毕。 当同时存在较高速率的请求时,请求的速率限制为每 10 秒 5 个请求。
- 对于在 10 秒内激活其特定应用程序的组成员身份的前 5 个用户,将在 2-10 分钟内在应用程序中配置组成员身份。
- 对于在 10 秒内针对特定应用程序激活其组成员身份的第六个及以更后面的用户,将在下一个同步周期为其向该应用程序预配组成员身份。 同步周期每 40 分钟运行一次。 限制是针对每个企业应用程序的。
- 如果用户被添加到 Microsoft Entra ID 中的组,但未使用 Microsoft Entra ID Privileged Identity Management (PIM) 激活其组成员身份:
- 如果用户无法访问 Google Cloud/Google Workspace 中的必要群组,请查看 PIM 日志和配置日志,以确保群组成员身份已成功更新。 根据目标应用程序的架构方式,组成员身份可能需要更长时间才能在应用程序中生效。
- 可以使用 Azure Monitor 创建故障警报。
更改日志
- 2020/10/17 - 添加了对更多 G Suite 用户和组属性的支持。
- 2020/10/17 - 更新了 G Suite 目标属性名称,使其匹配此处定义的内容。
- 2020/10/17 - 更新了默认属性映射。