def get_upn_by_samaccountname()

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"])