def authenticate(self): """ Does authentication """ headers = { 'X-Storage-User': self.username, 'X-Storage-Pass': self.api_key, 'Content-Length': '0' } http = httplib2.Http() http.disable_ssl_certificate_validation = True res, content = http.request(self.auth_url, 'GET', headers=headers) response = Response() response.headers = res response.status_code = int(res.status) response.content = content if response.status_code == 401: raise errors.AuthenticationError('Invalid Credentials') response.raise_for_status() try: storage_options = json.loads(response.content)['storage'] except ValueError: raise errors.StorageURLNotFound("Could not parse services JSON.") self.auth_token = response.headers['x-auth-token'] self.storage_url = self.get_storage_url(storage_options) if not self.storage_url: self.storage_url = response.headers['x-storage-url'] if not self.auth_token or not self.storage_url: raise errors.AuthenticationError('Invalid Authentication Response')
def authenticate(self): """ Does authentication """ headers = {'X-Storage-User': self.username, 'X-Storage-Pass': self.api_key, 'Content-Length': '0'} http = httplib2.Http() http.disable_ssl_certificate_validation = True res, content = http.request(self.auth_url, 'GET', headers=headers) response = Response() response.headers = res response.status_code = int(res.status) response.content = content if response.status_code == 401: raise errors.AuthenticationError('Invalid Credentials') response.raise_for_status() try: storage_options = json.loads(response.content)['storage'] except ValueError: raise errors.StorageURLNotFound("Could not parse services JSON.") self.auth_token = response.headers['x-auth-token'] self.storage_url = self.get_storage_url(storage_options) if not self.storage_url: self.storage_url = response.headers['x-storage-url'] if not self.auth_token or not self.storage_url: raise errors.AuthenticationError('Invalid Authentication Response')
def _make_request(headers): logger.debug("%s %s %s" % (method, url, headers)) res, content = self.http.request(url, method, headers=headers, body=data) response = Response() response.headers = res response.status_code = int(res.status) response.content = content return response
def authenticate(self): """ Does authentication """ headers = {'X-Storage-User': self.username, 'X-Storage-Pass': self.api_key, 'Content-Length': '0'} http = httplib2.Http() http.disable_ssl_certificate_validation = True if self.bluemix: userAndPass = b64encode(bytes(self.username + ':' + self.api_key, 'utf-8')).decode("ISO-8859-1") bluemix_headers = {'Authorization': 'Basic %s' % userAndPass} res, content = http.request(self.auth_url + '/' + self.bluemixappname, 'GET', headers=bluemix_headers) else: res, content = http.request(self.auth_url, 'GET', headers=headers) response = Response() response.headers = res response.status_code = int(res.status) response.content = content if response.status_code == 401: raise errors.AuthenticationError('Invalid Credentials') response.raise_for_status() if not self.bluemix: try: storage_options = json.loads(response.content)['storage'] except ValueError: raise errors.StorageURLNotFound("Could not parse " "services JSON.") self.storage_url = self.get_storage_url(storage_options) self.auth_token = response.headers['x-auth-token'] if not self.storage_url: self.storage_url = response.headers['x-storage-url'] if not self.auth_token or not self.storage_url: raise errors.AuthenticationError('Invalid Authentication Response')