当LDAP不支持唯一标识符时,如何同步LDAP用户和组



我将LDAP用户和组的引用导入数据库。因此,我需要定期同步这些用户和组。

当LDAP支持唯一标识符(UID)时,我很清楚如何同步这些对象。例如,Active Directory支持objectGUID属性。

在这种情况下,当用户(或组)被移动到LDAP树中的其他位置,因此其DN被更改时,我仍然可以使用UID找到它并更新用户。

当LDAP不支持UID并且DN已更改时该怎么办?

如果我使用旧DN查找,我找不到用户(或组),需要删除该用户。

但是,当用户被移动到LDAP树中的其他位置(其DN被更改)和用户被从LDAP中删除时,我如何区分这些用例呢?

当它移动时,我应该找到它并更新到新的DN。当它被删除时,我需要删除它。

我不知道怎么做。

我可以使用用户名(登录名)进行用户同步吗?

LDAP组应该使用什么?

如果您想支持多个LDAP服务器,那么明智的选择是使ID可配置,即在部署期间要求用户提供唯一属性。如果您的客户使用LDAP进行身份验证,这在100%的情况下都适用,因为即使是目录服务器本身也不支持唯一属性,他们必须手动保持其中至少一个是唯一的,以便使连接的系统能够根据LDAP进行身份验证,因为当身份验证后端存在重复时,您不太可能找到正常运行的软件。

当然,在部署过程中,您可以建议在某些LDAP实现中已知唯一的默认属性(如AD中的samAccountName),在大多数情况下,您都会找到正确的属性。

LDAP在多种模式中支持uid。您还没有告诉我们您正在使用哪一个,或者您正在为用户使用什么对象类。我使用支持uid,inetOrgPerson,并使用它将LDAP用户绑定到数据库用户。

最新更新