def authenticate(): p = load_properties() transport = SoapTransport() transport.soap_url = soap.admin_soap_url(p[pconstant.ADMIN_HOSTNAME]) auth = SoapAuthenticator() auth_token = auth.authenticate_admin(transport, p[pconstant.ADMIN_ACCOUNT_NAME], p[pconstant.ADMIN_PASSWORD]) print auth_token.token
def __init__(self, soap_url, domains={}, proxy_url=None): self.transport = SoapTransport() self.transport.soap_url = soap_url if proxy_url != None: self.transport.proxy_url = proxy_url self.authenticator = SoapAuthenticator() self.authenticator.domains = domains self.auth_token = None
def authenticate(): p = load_properties() transport = SoapTransport() transport.soap_url = soap.soap_url(p[pconstant.HOSTNAME]) auth = SoapAuthenticator() auth_token = auth.authenticate(transport, p[pconstant.ACCOUNT_NAME], p[pconstant.PASSWORD]) print auth_token
def pre_authenticate(): p = load_properties() transport = SoapTransport() transport.debug = 1 transport.soap_url = soap.soap_url(p[pconstant.HOSTNAME]) auth = SoapAuthenticator() auth.domains = p[pconstant.DOMAINS] auth_token = auth.authenticate(transport, p[pconstant.ACCOUNT_NAME]) print auth_token
class ZimbraSoapClient(object): """ Zimbra client main class. """ __metaclass__ = abc.ABCMeta # --------------------------------------------------------------- properties transport = property(lambda self: self._transport, lambda self, v: setattr(self, '_transport', v)) authenticator = property(lambda self: self._authenticator, lambda self, v: setattr(self, '_authenticator', v)) auth_token = property(lambda self: self._auth_token, lambda self, v: setattr(self, '_auth_token', v)) # -------------------------------------------------------------------- bound def __init__(self, soap_url, domains={}, proxy_url=None): self.transport = SoapTransport() self.transport.soap_url = soap_url if proxy_url != None: self.transport.proxy_url = proxy_url self.authenticator = SoapAuthenticator() self.authenticator.domains = domains self.auth_token = None # ------------------------------------------------------------------ unbound def invoke(self, ns, request_name, params={}, simplify=False, methodattrs=None): """ Invokes zimbra method using established authentication session. @param req: zimbra request @parm params: request params @param simplify: True to return python object, False to return xml struct @param methodattrs: attributes of the method @return: zimbra response @raise AuthException: if authentication fails @raise SoapException: wrapped server exception """ if self.auth_token == None: raise AuthException('Unable to invoke zimbra method') if util.empty(request_name): raise ZimbraClientException('Invalid request') return self.transport.invoke(ns, request_name, params, self.auth_token, simplify, methodattrs) @abc.abstractmethod def authenticate(self, account_name, password): """
class ZimbraSoapClient(object): """ Zimbra client main class. """ __metaclass__ = abc.ABCMeta # --------------------------------------------------------------- properties transport = property(lambda self: self._transport, lambda self, v: setattr(self, '_transport', v)) authenticator = property( lambda self: self._authenticator, lambda self, v: setattr(self, '_authenticator', v)) auth_token = property(lambda self: self._auth_token, lambda self, v: setattr(self, '_auth_token', v)) # -------------------------------------------------------------------- bound def __init__(self, soap_url, domains={}, proxy_url=None): self.transport = SoapTransport() self.transport.soap_url = soap_url if proxy_url != None: self.transport.proxy_url = proxy_url self.authenticator = SoapAuthenticator() self.authenticator.domains = domains self.auth_token = None # ------------------------------------------------------------------ unbound def invoke(self, ns, request_name, params={}, simplify=False, methodattrs=None): """ Invokes zimbra method using established authentication session. @param req: zimbra request @parm params: request params @param simplify: True to return python object, False to return xml struct @param methodattrs: attributes of the method @return: zimbra response @raise AuthException: if authentication fails @raise SoapException: wrapped server exception """ if self.auth_token == None: raise AuthException('Unable to invoke zimbra method') if util.empty(request_name): raise ZimbraClientException('Invalid request') return self.transport.invoke(ns, request_name, params, self.auth_token, simplify, methodattrs) @abc.abstractmethod def authenticate(self, account_name, password): """