这些天我一直在研究 LDAP 和 Active Directory 迁移。我想迁移到 LDAP,但无法从 Active Directory 获取密码。我想无缝迁移到 LDAP,我想要这样的解决方案:我希望客户端连接到 LDAP,如果用户尚未注册到 LDAP,那么我希望 LDAP 服务器转到 Active Directory 并请求身份验证。在 Active Directory 为身份验证提供 true 后,我希望 LDAP 自行将其注册到 LDAP 中的数据库,并在 KDM 上请求新密码。
此致
答案1
LDAP Active Directory 不提供 LDAP 身份验证,而是提供 Kerberos 身份验证。如果您检索 AD LDAP(例如使用 ldapsearch)用户帐户,您将看到密码字段留空,因为这不是进行身份验证的地方。
OpenLDAP 提供 LDAP 身份验证(在某种程度上类似于 apache basic auth:明文(仅编码)密码)。两种身份验证不兼容(并且 LDAP 身份验证不像 kerberos 身份验证那样提供 SSO)。
您应该做的是创建一个用于身份验证的 kerberos 服务器。您的 OpenLDAP 数据库可以从 AD 中检索。您需要在 kerberos 之间建立跨领域身份验证信任,以便 AD 信任这些信任(这样即使用户尚未加入 kerberos/OpenLDAP,他们也可以通过身份验证)。
无论如何,您似乎低估了这项任务的难度。完成这项任务本身就相当复杂。但是,如果您需要管理 Windows 桌面,就会遇到不兼容问题。