GCDS 常见问题解答

Google Cloud Directory Sync

您的 Google 网域  |  同步用户、群组和单位部门  |  常规设置  |  Cloud Platform

展开所有部分   |   收起所有部分

您的 Google 网域

如果 Google 网域的更改未在 Active Directory 或 LDAP 目录中体现,会发生什么?

对 Google 网域进行的更改最长可能需要 8 天才会显示。

如要了解原因,您需要了解 GCDS 是如何缓存数据的。GCDS 最多会将您 Google 服务的数据缓存保留 8 天。GCDS 清理缓存的频率可能会更高,具体取决于所缓存数据的大小。在缓存被清除之前,GCDS 不会识别对 Google 网域的更新。

GCDS 会在缓存被清除后识别 Google 网域的更改,并将其与 LDAP 目录中的源数据进行对比。如果数据不相符,GCDS 会撤消对 Google 网域所做的更改。

请注意,最佳的做法是先更新 LDAP 数据,然后再同步到 Google 网域。

如何手动清除缓存:

  • 在配置管理器中运行同步,并选择在同步时清除缓存。
  • 使用命令行标记“-f”强制清除缓存。
  • 修改 XML 配置文件,将 maxCacheLifetime 值设为 0。

重要提示:强制清除缓存可能会大幅增加同步所需的时间。

GCDS 如何访问我的 Google 网域中的用户个人资料数据?

用户个人资料(包括其他用户属性)会写入 Google 用户帐号,并且可在相应网域的全局目录中查看。GCDS 会访问 Google 通讯录中的全局目录。

GCDS 如何决定将哪些别名电子邮件地址添加到 Google 帐号中?

您可以在配置 GCDS 时指定 GCDS 要评估的属性。只有当属性中存储的数据与有效的 SMTP 地址相匹配时,GCDS 才会评估相应数据。

对于 Microsoft® Active Directory® 中的“proxyAddresses”,GCDS 会在同步时删除前缀 smtp:,因此该前缀不会显示在 Google 网域中。

同步用户、群组和单位部门

GCDS 可以同步循环群组成员资格吗?

循环群组成员资格是指两个(或多个)群组是彼此的成员。举例来说,群组 A 是群组 B 的成员,而群组 B 也是群组 A 的成员。虽然 LDAP 和 Microsoft® Active Directory® 支持循环群组成员资格,但 Google 网上论坛不支持。如果您尝试在 Google Cloud Directory Sync (GCDS) 中同步循环成员资格,则会收到“成员关系不可循环”错误消息 (Cyclic memberships not allowed.。

停用缓存后,为何 GCDS 一直返回错误?

这可能是由于配置问题(例如排除规则配置错误)造成的,而 GCDS 缓存会隐藏这类配置错误。

GCDS 最多会将 Google 服务(例如 G Suite 或 Cloud Identity)的数据缓存保留 8 天。GCDS 清理缓存的频率可能会更高,具体取决于所缓存数据的大小。不过,如果缓存未被清除,您可能在长达 8 天内无法看到更新。

您可以手动清除缓存:

  • 在配置管理器中运行同步,并选择在同步时清除缓存。
  • 使用命令行标记“-f”强制清除缓存。
  • 修改 XML 配置文件,将 maxCacheLifetime 值设为 0。

重要提示:强制清除缓存可能会大幅增加同步所需的时间。

举例来说,您可以同步 LDAP 数据并为您的 Google 服务(例如 G Suite 或 Cloud Identity)创建新的群组,然后创建排除规则,将相应群组从后续同步中排除。该排除规则就是错误配置的,并会出现故障。不过,后续同步会调用已缓存的数据,而群组会保留在您的 Google 服务中。当您再次同步并选择清除缓存时,系统就会因为这一配置错误将该群组从 Google 服务中移除。

我该如何配置 GCDS,让其只配置 Active Directory 或 LDAP 目录中的部分用户?

如果您只想将一小部分用户同步到 Google 网域中,您可以将单独的 Active Directory 或 LDAP 目录群组用作您的同步来源。此操作将限制被配置到您的 Google 网域中的用户。

示例:

用户查询
(&(memberof=cn=appsUsers,cn=users,dc=corp,dc=domain,dc=com)(objectCategory=person)(objectClass=user)(mail=*)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

此查询将返回身份经群组 DN 识别为相应群组成员的所有用户,且这些用户拥有电子邮件地址,用户帐号也未被停用。

如何确保 GCDS 不会删除或修改我创建的现有群组?

您可以在 Google 网域配置中指定“群组电子邮件地址”排除规则,将 GCDS 配置为排除特定群组。

示例:

排除规则
类型:群组电子邮件地址
匹配类型:完全匹配
规则:GCP_Project1@domain.com

注意:我们建议您在 LDAP 目录中创建和管理这些群组。GCDS 同步数据时,会将您 Google 网域中的群组成员资格更新到最新状态。

如何将使用 Google 服务的某个单位部门排除在 GCDS 同步范围之外?

您可以在 Google 网域配置中指定“单位完整路径”排除规则,将 GCDS 配置为排除某个使用 Google 服务(例如 G Suite 或 Cloud Identity)的单位部门。

示例:

排除规则
类型:单位完整路径
匹配类型:完全匹配
规则:/OUPath/MyExcludedOU

GCDS 会同步用户创建的群组吗?

用户创建的群组是指在 Google 网上论坛企业版中创建的群组。如果某个 LDAP 群组与用户创建的群组相匹配,GCDS 则会忽略相应群组,就如同有针对这一特定群组的 GCDS 排除规则一样。系统不会移除与 LDAP 数据不匹配的群组。

如果您为 LDAP 中与某一群组对应的对象/实体添加成员,GCDS 就会将相应成员添加到该群组。即使您在其中添加用户的 Google 群组与 LDAP 数据不符,系统在同步过程中也不会移除这些成员。

要详细了解用户创建的群组,请参阅群组管理员常见问题解答

GCDS 可以同步嵌套群组成员资格吗?

可以,GCDS 会同步嵌套群组成员资格。但是,关于嵌套群组以及此类群组与 Google 网上论坛企业版之间的电子邮件递送,存在一些限制。

在某些情况下,并非所有嵌套群组成员都能接收到发送到相应群组的电子邮件内容。这些情况包括:

  • 启用了审核权限 - 在得到群组管理员批准之前,电子邮件不会自动发送给群组成员或其他嵌套群组。
  • 父级群组 - 这些群组可能没有发帖权限,无法将邮件发送给嵌套群组。

有关详情,请参阅将某个群组添加到另一个群组中以及查看哪些人拥有查看、发帖和审核权限

常规设置

为什么要配置 GCDS 执行密码同步?

GCDS 中的默认密码同步设置是用来指定 GCDS 为新用户帐号创建密码的方式的。如果您不想自行设置帐号的初始密码,则无需执行任何操作,只需使用默认设置即可。

如果您使用 Active Directory,则可以借助 Password Sync 将用户密码从 Active Directory 同步到 Google 网域。

当多条适用的同步规则发生冲突时,GCDS 如何解决此问题?

GCDS 会按照从高到低的顺序考虑这些规则。

例如,您配置了一条用户帐号同步规则,要求在根级单位部门或“/”中创建用户。之后,您创建了一条优先顺序较低的规则,要求在 /例外单位部门中创建用户。同步后,系统将在根级单位部门中创建同时符合这两条规则的用户,因为此部门对应的规则具有较高优先顺序。

要确保用户被正确置于 /例外中,您需要确保相应规则的排列顺序高于相冲突的规则。或者,请确保将这条规则置于有序列表的第一位。

如何审核 GCDS 同步?

GCDS 使用三方模式的 OAuth 2.0 进行授权。此过程将授予 GCDS 一个 OAuth 2.0 令牌。此令牌允许 GCDS 代表对其授权的管理员执行操作。

所有审核事件均由对 GCDS 授权的管理员列出。您可以考虑创建一个 GCDS 专用的管理员帐号,以便清楚地查看哪些更改和审核是由 GCDS 执行的。

如何在没有图形界面 (GUI) 的机器上向 GCDS 授权?

要在不支持 GUI 环境的服务器上设置 GCDS,请执行以下操作:

  1. 打开命令提示符窗口,要设置 LDAP 凭据,请输入:

    ./upgrade-config -ldapuser <LDAP 用户名> -ldappassword <LDAP 密码> -c <配置文件名称>

  2. 要授权 Google 网域,请输入:

    ./upgrade-config -Oauth <Google 域名> -c <配置文件名称>

  3. 要测试 LDAP 连接,请输入:

    ./upgrade-config -testldap -c <配置文件名称>

  4. 要测试 Google 连接,请输入:

    ./upgrade-config -testgoogleapps -c <配置文件名称>

Cloud Platform

如何同步 Active Directory 或 LDAP 目录中的安全群组,并将它们用于 Cloud IAM?

您可以配置 GCDS,让其通过 LDAP 搜索规则同步安全群组。

示例 1:搜索所有安全群组

此示例显示的 LDAP 搜索针对的是所有拥有电子邮件地址的安全群组:

(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=-2147483648)(mail=*))

示例 2:搜索一部分安全群组

如果您想同步一部分安全群组,您可以考虑使用 extensionAttribute1,并设置特定的值,如 GoogleCloudPlatform。然后,您可以优化 GCDS 查询,使其仅配置特定的一部分安全群组:

此示例显示的 LDAP 搜索针对的是所有拥有电子邮件地址和 GoogleCloudPlatform 属性的安全群组:

(&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=-2147483648)(mail=*)(extensionAttribute1=GoogleCloudPlatform))


重要信息:

  • Google 网域中的所有群组被引用时均使用电子邮件地址。请务必为您要同步的所有安全群组都指定有效的邮件属性。
  • 在 Google 网域中创建的群组不会自动拥有明确的 Google Cloud Identity & Access Management 角色。创建群组后,您必须使用 Cloud IAM 为其分配具体的角色。
如何添加只需要 Google Cloud Platform 项目帐号的用户?

您可以添加一条针对 Google Cloud Platform 用户的同步规则,以配置 GCDS。最简单的方法是根据用户的群组成员身份,创建一个新的查询,例如:

(&(memberof=cn=CloudPlatformUsers,cn=users,dc=corp,dc=domain,dc=com)(objectCategory=person)(objectClass=user)(mail=*)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

然后,您可以使用以下搜索条件,让系统返回相应群组的成员(这些成员必须拥有电子邮件地址,且帐号也未被停用):

group cn=CloudPlatformUsers,cn=users,dc=corp,dc=domain,dc=com

您可以考虑将这些用户置于单独的单位部门中。为此,您可以在规则中指定一个单位部门名称(如“Cloud Platform 用户”)。如果此单位部门不存在,请先创建此部门。

许可问题

请考虑您的网域配置,以便恰当地将产品许可分配给用户帐号。如果启用了自动分配许可设置,您可能希望排除“Cloud Platform 用户”这一单位部门,不向其分配产品许可。有关详情,请参阅为单位设置自动分配许可选项

对于更复杂的许可要求,您可以配置 GCDS 来同步和管理所有用户的许可分配。有关详情,请参阅同步许可

该内容对您有帮助吗?
您有什么改进建议?