Skip to content
Snippets Groups Projects
Verified Commit f6c4e6ff authored by Peter Stanko's avatar Peter Stanko
Browse files

Fixed uco extraction in ldap

parent c0f7981e
No related branches found
No related tags found
No related merge requests found
Pipeline #
......@@ -50,10 +50,11 @@ def ldap_get_uco_for_user(username: str) -> int:
"""
user_dict = ldap_wrapper.search_dict(f"uid={username},ou=People")
log.debug(f"[LDAP] User ({username}): {user_dict}")
if not user_dict:
return 0
desc = user_dict[0]['description']
uco = [str(u) for u in desc if str(u).startswith('UCO=')]
uco = [u.decode('utf-8') for u in desc if u.decode('utf-8').startswith('UCO=')]
if not uco:
return 0
return int(uco[0][4:])
......
......@@ -52,12 +52,14 @@ class LDAPWrapper(object):
Returns(LDAPObject): LDAP Object instance
"""
if not self._ldap_client and self.is_enabled:
self._ldap_client = ldap.initialize(self.ldap_url)
self._ldap_client = ldap.initialize(self.ldap_url, bytes_mode=False)
return self._ldap_client
def search(self, selector: str):
selector = selector + self.selector_base
return self.ldap.search_s(selector, ldap.SCOPE_SUBTREE, "objectclass=*")
result = self.ldap.search_s(selector, ldap.SCOPE_SUBTREE, "objectclass=*")
log.debug(f"[LDAP] Search ({selector}): {result}")
return result
def search_dict(self, *args, **kwargs):
l_res = self.search(*args, **kwargs)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment