def authenticate(self):
        """
        orchestrate the ldap login.
        raise an exception on error.
        """
        self._bind()
        roles = self._authorize()
        if not roles:
            raise Exception("ldap authorization failed")
        return self._update_user(roles)

        orchestrate the ldap login.
        raise an exception on error.
        
lemur/auth/ldap.py