GCDS 常见问题解答

Google Cloud Directory Sync

以下是关于使用 Google Cloud Directory Sync 的常见问题。

设置 GCDS  |  您的 Google 账号  |  同步用户和组织部门  |  同步群组 |  一般问题  |  Google Cloud

设置 GCDS

打开此部分  |  全部收起并转至页首

如何在没有图形界面 (GUI) 的设备上授权 GCDS?
  1. 确保您运行的是 GCDS 4.7.14 版或更高版本。

    有关详情,请参阅更新 GCDS

  2. 在装有图形界面 (GUI) 的计算机上授权 GCDS。

    有关详情,请参阅授权您的 Google 账号

  3. 创建并保存 XML 文件。
  4. 在同一台计算机上,通过 -exportkeys 参数使用命令行运行 upgrade-config 工具。

    示例:upgrade-config -exportkeys <encryption key file> [password]

    在此示例中,系统会将密钥导出至名为 <encryption key file> 的文件中。您可以选择使用密码。

  5. 将加密密钥文件和配置文件复制到没有 GUI 的计算机上。
  6. 在没有 GUI 的计算机上,请使用 -importkeys 参数来通过命令行运行 upgrade-config 工具。

    示例:upgrade-config -importkeys <file name>

    重要提示-importkeys 参数会移除计算机上可能有的任何已获授权的 GCDS 配置。

  7. 如果需要,输入您在第 4 步中设置的密码。

    您应该会看到已成功导入密钥的确认消息。

提示:如需了解更多选项,请在命令行中输入 upgrade-config -help 命令。

如何将 GCDS 移至其他服务器?
  1. 如果您认为有用户电子邮件地址变更(用户重命名)待生效,或者不确定是否存在这种情况,请选择一个选项:
    • 在旧服务器上运行同步。
    • 将制表符分隔值 (TSV) 文件复制到新服务器。

      您可以通过搜索 .tsv,在配置文件中查找 TSV 文件的名称和位置。

    • 在新服务器上安装 GCDS。有关说明,请参阅下载并安装 GCDS
  2. 将配置文件复制到新服务器。
  3. 在新服务器的配置管理器中,打开配置文件。
  4. 为您的 Google 账号重新授权 GCDS。有关说明,请参阅授权您的 Google 账号
  5. LDAP 配置页面,更新 LDAP 密码。有关说明,请参阅 LDAP 连接设置
  6. 通知页面,更新 SMTP 密码。有关说明,请参阅通知属性
  7. 运行模拟同步。
  8. 检查同步情况,确保没有发生意外变化。
  9. 运行完整的同步。

    运行同步后,旧服务器中的 TSV 文件会更新。如果您没有转移 TSV 文件,则系统会创建新文件。

如果我遇到了与证书相关的问题,该怎么办?

如果您在运行 GCDS 时遇到了与证书相关的任何问题,请参阅对证书相关问题进行排查

↑ 返回页首

您的 Google 账号

打开此部分  |  全部收起并转至页首

GCDS 使用哪些 API?

GCDS 使用 API 向 Google 账号上传数据和发送请求。GCDS 使用 OAuth 对 API 进行身份验证,还会使用 SMTP 发送同步报告。GCDS 使用以下 API:

  • Directory API:管理 Chrome 设备、群组、群组别名、成员、组织部门、用户和用户别名
  • Domain Shared Contacts API:创建、删除和更新外部联系人的共享联系信息
为什么 Google 账号没有出现预期的更改?

Google 账号的更改最长可能需要 8 天时间才能反映出来。如要明白其中的原因,您需要了解 GCDS 是如何缓存数据的。

GCDS 最多会将您 Google 账号的数据缓存保留 8 天。GCDS 可能会视已缓存数据的大小更为频繁地清理缓存。但是,如果 GCDS 未清理缓存,那么您使用管理控制台或其他 API 客户端对 Google 账号做出的更改最长可能需要 8 天时间才会反映出来。

GCDS 会在缓存被清理后识别 Google 账号的更改,并将其与 LDAP 目录中的源数据进行对比。如果数据不匹配,GCDS 会撤消对 Google 账号所做的更改。

要手动清理缓存,可执行以下操作:

  • 从配置管理器中发起同步操作,并选择在同步时清理缓存。
  • 使用命令行 flag -f 强制清除缓存。
  • 修改 XML 配置文件,将 maxCacheLifetime 值设为 0

重要提示:清除缓存可能会大幅增加同步用时。

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

用户个人资料(包括其他用户属性)会写入 Google 用户账号,并显示在账号的目录中。GCDS 会访问 Google 通讯录中的目录。有关详情,请参阅概览:设置和管理目录

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

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

在使用 Microsoft Active Directory 中的 proxyAddresses 时,GCDS 会在同步过程中删除前缀 smtp:,因此该前缀不会显示在 Google 网域中。

我可以同时向多个 Google 账号同步数据吗?

可以。您可以使用一个或多个配置文件,通过 GCDS 将数据从一个 LDAP 目录同步到多个 Google 账号。如果一次运行多个同步,务必使用唯一名称保存配置文件。

要克隆现有配置文件,请使用配置管理器中的另存为选项,并使用新名称保存文件。

GCDS 如何解决账号冲突问题?

如果您在 Google 管理控制台中启用了有冲突的账号管理设置,那么 GCDS 会在同步过程中忽略这些设置。

如果 GCDS 遇到有冲突的账号,则会创建一个新的 Google Workspace 账号,而现有的个人账号将重命名为 username%googleworkspacedomain@gtempaccount.com。

↑ 返回页首

同步用户和组织部门

打开此部分  |  全部收起并转至页首

如果只需配置部分用户,应当如何设置 GCDS?

如果要将部分用户同步到 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 识别身份为相应群组成员,拥有电子邮件地址,账号未被停用。

如何在同步时排除 Google 账号中的某个组织部门?

您可以在 Google 网域配置中指定“组织完整路径”排除规则,让 GCDS 排除您 Google 账号中设置的某个组织部门。

示例:

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

我可以将用户同步到辅助网域吗?

如果您添加了其他(辅助)网域,则可以使用 GCDS 将用户同步到该网域。如要将用户同步到您的辅助网域,请确保 LDAP 服务器中的用户邮件地址与您的辅助域名相匹配。GCDS 会将您的辅助域名用作主要邮件地址,在 Google 账号中创建用户。

如果您不想更改现有的 LDAP 邮件属性,请指定其他属性以同步辅助网域用户的电子邮件地址。要详细了解辅助域名,请参阅添加用户的网域别名或辅助域名

执行 LDAP 用户搜索查询时,我可以使用通配符吗?

可以,只要 LDAP 服务器支持通配符即可。

执行用户搜索查询时,LDAP 目录不支持在 DN 属性中使用通配符。例如,您可以使用 (mail=user*),但不能使用 (distinguishedName=*,DC=domain,DC=com)

执行用户搜索查询时,我可以使用 memberOf 递归搜索吗?

可以,只要 LDAP 服务器支持 memberOf 递归搜索即可。Active Directory 支持这种搜索,但 OpenLDAP 不支持。

为什么在运行 GCDS 后,我的 Google Workspace 用户账号被停用了?

如果在运行 GCDS 后 Google Workspace 用户账号遭到停用,我们将向您发送错误消息,说明出现此问题的原因。为避免在今后的同步过程中再次出现这样的错误,您可以根据实际问题情况采用以下解决方案:

  • 问题描述:LDAP 服务器中不存在此用户。

    解决方案:既然 LDAP 服务器中不存在此用户,那么客户应该设置 Google 用户排除规则,防止 GCDS 在 Google Workspace 中停用此用户。

  • 问题描述:此用户在 LDAP 服务器中的电子邮件地址无效。

    解决方案:您应该为此用户配置电子邮件地址或设置 Google 用户排除规则,防止 GCDS 在 Google Workspace 中停用此用户。

    您还可以将 GCDS 配置更改为使用在 LDAP 服务器中的用户电子邮件地址属性。例如,将属性 mail. 更改为属性 userPrincipalName (UPN)。

  • 问题描述:此用户被 LDAP 服务器中的排除规则跳过。

    解决方案:如果您不想停用此用户,那么您应该重新设置排除规则。

  • 问题描述:由于已勾选在 Google Domain 中停用此类用户选项,系统会通过搜索规则找到并停用此用户。

    解决方案:您可能需要停用此用户。

  • 问题描述:此用户在 LDAP 服务器中遭到停用。

    解决方案:您可能需要停用此用户。

↑ 返回页首

同步群组

打开此部分  |  全部收起并转至页首

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

循环群组成员资格是指两个(或多个)群组是彼此的成员。举例来说,群组 A 是群组 B 的成员,而群组 B 也是群组 A 的成员。

虽然 LDAP 和 Microsoft Active Directory 支持循环群组成员资格,但是 Google 网上论坛不支持。如果您尝试同步循环群组成员资格,则会收到“成员资格不可循环”(Cyclic memberships not allowed) 的错误消息

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

您可以在 Google 网域配置中指定“群组电子邮件地址”排除规则,将 GCDS 配置为排除特定群组。 有关详情,请参阅使用针对 Google 数据的规则

示例:

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

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

要保留不在 LDAP 中的现有群组,您可以启用不删除未在 LDAP 中找到的 Google 群组设置。有关详情,请参阅 Google 群组删除政策

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

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

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

如需详细了解用户创建的群组,请参阅网上论坛管理员常见问题解答

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

可以,GCDS 会同步嵌套群组成员资格。但是,就嵌套群组本身以及此类群组与 Google 网上论坛企业版之间的电子邮件递送功能而言,会存在一些限制。在以下情况下,并非所有嵌套群组成员都将收到发送到相应群组的电子邮件内容:

  • 已启用审核权限:在得到群组管理员批准之前,电子邮件不会自动发送给群组成员或其他嵌套群组。
  • 父级群组没有发布权限,因此无法向嵌套群组发送邮件。

相关主题

GCDS 可以搜索嵌套群组成员资格吗?

可以。GCDS 会同步群组成员,无论该成员是用户还是群组。但是,如果您的 LDAP 服务器不支持某个搜索规则,那么 GCDS 也不支持用该规则扩展嵌套群组成员。

↑ 返回页首

常规

打开此部分  |  全部收起并转至页首

清理缓存后,为何 GCDS 一直返回错误?

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

GCDS 会将 Google 服务(例如 Google Workspace 或 Cloud Identity)的数据缓存保留最多 8 天。GCDS 可能会视已缓存数据的大小更为频繁地清理缓存。但是,如果 GCDS 未清理缓存,那么您使用管理控制台或其他 API 客户端对 Google 账号做出的更改最长可能需要 8 天时间才会反映出来。

要手动清理缓存,可执行以下操作:

  • 从配置管理器中发起同步操作,并选择在同步时清理缓存。
  • 使用命令行 flag -f 强制清除缓存。
  • 修改 XML 配置文件,将 maxCacheLifetime 值设为 0

重要提示:清除缓存可能会大幅增加同步用时。

示例:您拥有一个同时存在于 LDAP 服务器和 Google 账号的群组。您为此群组创建了 Google 排除规则,希望防止 GCDS 在同步过程中更改该群组。

不过,此规则实际上会导致 GCDS 认为 Google 账号中不存在此群组。GCDS 会尝试创建该群组,但由于该群组已存在,所以您会收到错误消息,而且 GCDS 会将该群组添加到缓存中。随后,GCDS 会使用缓存进行同步,并且会识别该群组已存在。一旦缓存被清理,GCDS 就会再次认为此群组不存在。

为什么要配置 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 执行的。

相关主题

授权您的 Google 账号

如果我启用架构同步功能,GCDS 会删除我的架构吗?

在同步期间,GCDS 会根据当前的 LDAP 设置来确定是否应保留或删除 Google 账号中的自定义架构。

此外,GCDS 配置文件的 schemaHistory 设置会包含以前同步过的自定义架构的相关信息。GCDS 同步完某个自定义架构后,系统会自动将该架构添加到 schemaHistory。如果您手动删除配置文件中的 schemaHistory 设置,并且您的 LDAP 目录中不存在自定义架构,则 GCDS 会跳过上述步骤,且不会从您的 Google 账号中删除该自定义架构。

要在配置文件中手动删除 schemaHistory,请查找以下内容:

<schemas>
   <schemaDefinitions />
   <schemaHistory>
      <schemaName>GroupMembership</schemaName>
   </schemaHistory>
</schemas>

我可以从多个 LDAP 目录中同步 GCDS 吗?
您只能从单个 LDAP 目录中同步 GCDS。如果您有多个 LDAP 目录,请将您的 LDAP 服务器数据整合到一个目录中。有关详情,请参阅第 2 步为 LDAP 目录做好同步准备
GCDS 如何生成和安全存储对称密钥?

用来加密 GCDS 刷新令牌的对称密钥是由默认的 Java crypto KeyGenerator 使用 AES 128 生成的。

对称密钥的存储是在 Java 的首选项中通过 userNodeForPackage 方式处理的。密钥的确切位置不受 GCDS 控制,而取决于操作系统。

在 Windows 上,系统会将偏好设置数据存储在用户的注册表配置单元。在 Linux 上,系统会将偏好设置数据存储在用户的主目录。

我们建议客户遵循相关的最佳实践,确保通过使用加密的文件系统和受限的访问控制列表 (ACL) 让密钥获得妥善保护。

什么是唯一 ID?

唯一 ID(也称为非地址主键)供 GCDS 在内部使用,不会同步到 Google Workspace。GCDS 会将唯一 ID 存储在安装了 GCDS 的计算机上的 TSV 文件中。您可以在 XML 配置文件中找到该 TSV 文件的名称及其完整路径。

如果某位用户在 LDAP 服务器上被重命名,但在 Google Workspace 中未重命名,GCDS 会使用唯一 ID 来防止用户的详细信息被删除或复制。

注意:如果您手动更改用户在 LDAP 服务器和 Google Workspace 上的电子邮件地址,可能会导致同步问题。为避免此问题,请在运行 GCDS 之前,从 TSV 文件中移除相应的用户记录。

↑ 返回页首

Google Cloud

打开此部分  |  全部收起并转至页首

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

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

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

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

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

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

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

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

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

重要提示:

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

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

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

然后,您可以使用下方列出的搜索条件,让系统返回符合这些条件的用户:属于相应群组的成员,拥有电子邮件地址,且账号未被停用。

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

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

许可问题

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

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

↑ 返回页首


“Google”、Google Workspace 以及相关标志和徽标是 Google LLC 的商标。其他所有公司名和产品名是其各自相关公司的商标。

该内容对您有帮助吗?

您有什么改进建议?
搜索
清除搜索内容
关闭搜索框
Google 应用
主菜单