Password Sync 可用于直接从 Microsoft Active Directory 更新用户的 Google Workspace 和 Cloud Identity 密码。
Google Workspace 和 Cloud Identity 管理员可以使用密码同步。
运作方式
安装并配置 Password Sync 后,每当 Active Directory 用户更改密码时,Password Sync 都会将更新后的密码发送到您的 Google 账号。
- 当用户的密码发生变化时,系统会向网域控制器 (DC) 发送更新请求。
- 该网域控制器中的 Microsoft Windows 会调用包含新密码和用户名的 Password Sync 动态链接库 (DLL)。
- GSPS 服务从 DLL 接收经过哈希处理的密码和用户名。
- 服务使用 LDAP 从 Active Directory 获取用户的电子邮件地址。
- 该服务使用 Directory API 更新您的 Google 账号。此外,要让 Google Workspace API 正常运行,您需要打开多个端口并将一些主机名添加到许可名单。了解详情
- 然后,用户可以使用其 Active Directory 密码登录自己的 Google 账号。
技术详情
- 在 Active Directory 中,密码会以只写形式存储,无法通过任何接口(例如 LDAP)读取这些信息。因此,常规同步方法(例如 Google Cloud Directory Sync)无法访问这些数据。读取密码的唯一方法是在设置或更改密码时捕获密码。
- Password Sync 包含一个名为“password_sync_dll.dll”的 DLL,该 DLL 以 LSA 通知包的形式安装。如需详细了解 LSA 通知包,请参阅这篇 Microsoft 文章。
- 如果特定 DC 上的密码发生更改,DLL 就会收到更新后的密码和用户的用户名。Password Sync 必须安装在每个可写 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 的商标。其他所有公司名和产品名是其各自相关公司的商标。