def test_detects_anyCredentials(self): self.content_type = "application/xml" self.body = '<auth '\ 'xmlns="http://docs.openstack.org/identity/api/v2.0">'\ '<anyCredentials/></auth>' self.assertEquals(utils.detect_credential_type(self), "anyCredentials")
def test_detects_passwordCredentials(self): self.content_type = "application/xml" self.body = '<auth '\ 'xmlns="http://docs.openstack.org/identity/api/v2.0">'\ '<passwordCredentials/></auth>' self.assertEquals(utils.detect_credential_type(self), "passwordCredentials")
def authenticate(self, req): credential_type = utils.detect_credential_type(req) if credential_type == "passwordCredentials": auth_with_credentials = utils.get_normalized_request_content( auth.AuthWithPasswordCredentials, req) result = self.identity_service.authenticate( auth_with_credentials) return utils.send_result(200, req, result) elif credential_type == "token": unscoped = utils.get_normalized_request_content( auth.AuthWithUnscopedToken, req) result = self.identity_service.\ authenticate_with_unscoped_token(unscoped) return utils.send_result(200, req, result) elif credential_type == "OS-KSEC2:ec2Credentials": return self._authenticate_ec2(req) elif credential_type == "OS-KSS3:s3Credentials": return self._authenticate_s3(req) elif credential_type in ["ec2Credentials", "OS-KSEC2-ec2Credentials"]: logger.warning('Received EC2 credentials in %s format. Processing ' 'may fail. Update the client code sending this ' 'format' % credential_type) return self._authenticate_ec2(req) else: raise fault.BadRequestFault("Invalid credentials %s" % credential_type)
def test_detects_anyCredentials_with_tenant_json(self): self.content_type = "application/json" self.body = json.dumps( {'auth': { 'tenantId': '1000', 'anyCredentials': {} }}) self.assertEquals(utils.detect_credential_type(self), "anyCredentials")
def test_detects_anyCredentials_with_tenant_json(self): self.content_type = "application/json" self.body = json.dumps({'auth': {'tenantId': '1000', 'anyCredentials': {}}}) self.assertEquals(utils.detect_credential_type(self), "anyCredentials")
def test_detects_anyUnwrappedCredentials_json(self): self.content_type = "application/json" self.body = json.dumps({'anyCredentials': {}}) self.assertEquals(utils.detect_credential_type(self), "anyCredentials")
def test_detects_passwordCredentials_unwrapped(self): self.content_type = "application/xml" self.body = '<passwordCredentials '\ 'xmlns="http://docs.openstack.org/identity/api/v2.0"/>' self.assertEquals(utils.detect_credential_type(self), "passwordCredentials")