借助 Password Sync,您可以直接从 Microsoft Active Directory 中更新用户的 Google Workspace 和 Cloud Identity 密码。
密码同步功能可供 Google Workspace 和 Cloud Identity 管理员使用。运作方式
安装并配置 Password Sync 后,每当 Active Directory 用户更改密码时,该工具都会将更新后的密码发送到 Google 账号。
- 当用户的密码发生变化时,系统会向网域控制器 (DC) 发送更新请求。
- 此网域控制器中的 Microsoft Windows 会调用包含相应用户名和新密码的 Password Sync 动态链接库 (DLL)。
- GSPS 服务从 DLL 接收经过哈希处理的密码和用户名。
- GSPS 服务利用 LDAP 从 Active Directory 获取用户的电子邮件地址。
- 该服务使用 Directory API 更新 Google 账号。此外,要让 Google Workspace API 正常运行,您需要打开多个端口并将一些主机名添加到许可名单。了解详情
- 用户之后可以使用 Active Directory 密码登录自己的 Google 账号。
技术详情
- 在 Active Directory 中,密码会以只写形式存储,无法通过任何接口(例如 LDAP)读取。因此,常规的同步方法(例如 Google Cloud Directory Sync)无法访问密码。读取密码的唯一方法就是在设置或更改密码时获取它们。
- 密码同步包含一个名为“password_sync_dll.dll”的 DLL,此 DLL 以 LSA 通知包形式安装。如需详细了解 LSA 通知包,请参阅这篇 Microsoft 文章。
- 如果特定 DC 上的密码发生变化,DLL 就会收到用户更新之后的密码以及用户名。密码同步必须安装在每个可写 DC 上,因为在收到密码更改的 DC 上,Windows 会触发密码同步。无论更新密码的是管理员还是最终用户,都会触发密码同步。如需详细了解 PasswordChangeNotify 回调函数,请参阅这篇 Microsoft 文章。
- 当 DLL 接收用户名和密码后,会将密码哈希处理为加盐 SHA512,然后将其发送到密码同步服务。
- 然后,Password Sync 服务 ("password_sync_service.exe") 会根据 DLL 发送的用户名,利用 LDAP 从 Active Directory 中查找用户的电子邮件地址。然后,使用 Directory API 更新 Google 账号。通过 Directory API 更改密码后,部分应用 OAuth 令牌会被撤消。用户可能需要使用自己的用户名和密码重新登录这些应用。
- 密码同步功能符合 Microsoft 密码过滤编程注意事项中的相关要求。有关详情,请参阅这篇 Microsoft 文章。
Google、Google Workspace 以及相关标志和徽标是 Google LLC 的商标。其他所有公司名和产品名是其各自相关公司的商标。