sources/ldap: allow using entryDN as uniqueness field

This commit is contained in:
Jens Langhammer
2024-04-25 19:59:11 +02:00
parent c80116475b
commit d856e403f8
2 changed files with 10 additions and 2 deletions

View File

@ -48,7 +48,11 @@ class GroupLDAPSynchronizer(BaseLDAPSynchronizer):
dn=group_dn, dn=group_dn,
) )
continue continue
uniq = flatten(attributes[self._source.object_uniqueness_field]) uniq = flatten(
attributes[self._source.object_uniqueness_field]
if self._source.object_uniqueness_field in attributes
else group.get(self._source.object_uniqueness_field)
)
try: try:
defaults = self.build_group_properties(group_dn, **attributes) defaults = self.build_group_properties(group_dn, **attributes)
defaults["parent"] = self._source.sync_parent_group defaults["parent"] = self._source.sync_parent_group

View File

@ -50,7 +50,11 @@ class UserLDAPSynchronizer(BaseLDAPSynchronizer):
dn=user_dn, dn=user_dn,
) )
continue continue
uniq = flatten(attributes[self._source.object_uniqueness_field]) uniq = flatten(
attributes[self._source.object_uniqueness_field]
if self._source.object_uniqueness_field in attributes
else user.get(self._source.object_uniqueness_field)
)
try: try:
defaults = self.build_user_properties(user_dn, **attributes) defaults = self.build_user_properties(user_dn, **attributes)
self._logger.debug("Writing user with attributes", **defaults) self._logger.debug("Writing user with attributes", **defaults)