in ad-joining/register-computer/ad/domain.py [0:0]
def get_upn_by_samaccountname(self, samaccountname):
if "\\" in samaccountname:
samaccountname = samaccountname.split("\\")[1]
self.__connection.search(
search_filter="(&(objectClass=user)(sAMAccountName=%s))" % ldap3.utils.conv.escape_filter_chars(samaccountname),
search_base=self.__base_dn,
attributes=["userPrincipalName"])
if len(self.__connection.entries) == 0:
raise LdapException("User '%s' not found in directory" % samaccountname)
else:
return self.__to_scalar(self.__connection.entries[0]["userPrincipalName"])