Loading portal/service/users.py +2 −1 Original line number Diff line number Diff line Loading @@ -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:]) Loading portal/tools/ldap_client.py +4 −2 Original line number Diff line number Diff line Loading @@ -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) Loading Loading
portal/service/users.py +2 −1 Original line number Diff line number Diff line Loading @@ -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:]) Loading
portal/tools/ldap_client.py +4 −2 Original line number Diff line number Diff line Loading @@ -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) Loading