Merge "Provide has_scope_parameters function on plugins"
This commit is contained in:
commit
e127d46f21
@ -83,6 +83,11 @@ class Auth(base.BaseIdentityPlugin):
|
||||
:rtype: dict
|
||||
"""
|
||||
|
||||
@property
|
||||
def has_scope_parameters(self):
|
||||
"""Does the plugin have parameters that will create a scoped token"""
|
||||
return self.tenant_id or self.tenant_name or self.trust_id
|
||||
|
||||
|
||||
_NOT_PASSED = object()
|
||||
|
||||
|
@ -74,6 +74,13 @@ class BaseAuth(base.BaseIdentityPlugin):
|
||||
def get_auth_ref(self, session, **kwargs):
|
||||
return None
|
||||
|
||||
@property
|
||||
def has_scope_parameters(self):
|
||||
"""Does the plugin have parameters that will create a scoped token"""
|
||||
return (self.domain_id or self.domain_name or
|
||||
self.project_id or self.project_name or
|
||||
self.trust_id)
|
||||
|
||||
|
||||
class Auth(BaseAuth):
|
||||
"""Identity V3 Authentication Plugin.
|
||||
|
@ -101,6 +101,7 @@ class V2IdentityPlugin(utils.TestCase):
|
||||
a = v2.Password(self.TEST_URL, username=self.TEST_USER,
|
||||
password=self.TEST_PASS)
|
||||
self.assertIsNone(a.user_id)
|
||||
self.assertFalse(a.has_scope_parameters)
|
||||
s = session.Session(a)
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
s.get_auth_headers())
|
||||
@ -117,6 +118,7 @@ class V2IdentityPlugin(utils.TestCase):
|
||||
a = v2.Password(self.TEST_URL, user_id=self.TEST_USER,
|
||||
password=self.TEST_PASS)
|
||||
self.assertIsNone(a.username)
|
||||
self.assertFalse(a.has_scope_parameters)
|
||||
s = session.Session(a)
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
s.get_auth_headers())
|
||||
@ -132,6 +134,7 @@ class V2IdentityPlugin(utils.TestCase):
|
||||
self.stub_auth(json=self.TEST_RESPONSE_DICT)
|
||||
a = v2.Password(self.TEST_URL, username=self.TEST_USER,
|
||||
password=self.TEST_PASS, tenant_id=self.TEST_TENANT_ID)
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
self.assertIsNone(a.user_id)
|
||||
s = session.Session(a)
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
@ -148,6 +151,7 @@ class V2IdentityPlugin(utils.TestCase):
|
||||
a = v2.Password(self.TEST_URL, user_id=self.TEST_USER,
|
||||
password=self.TEST_PASS, tenant_id=self.TEST_TENANT_ID)
|
||||
self.assertIsNone(a.username)
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
s = session.Session(a)
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
s.get_auth_headers())
|
||||
@ -176,6 +180,7 @@ class V2IdentityPlugin(utils.TestCase):
|
||||
self.stub_auth(json=self.TEST_RESPONSE_DICT)
|
||||
a = v2.Password(self.TEST_URL, username=self.TEST_USER,
|
||||
password=self.TEST_PASS, trust_id='trust')
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
s = session.Session(a)
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
s.get_auth_headers())
|
||||
|
@ -197,6 +197,7 @@ class V3IdentityPlugin(utils.TestCase):
|
||||
a = v3.Password(self.TEST_URL,
|
||||
username=self.TEST_USER,
|
||||
password=self.TEST_PASS)
|
||||
self.assertFalse(a.has_scope_parameters)
|
||||
s = session.Session(auth=a)
|
||||
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
@ -216,6 +217,7 @@ class V3IdentityPlugin(utils.TestCase):
|
||||
self.stub_auth(json=self.TEST_RESPONSE_DICT)
|
||||
a = v3.Password(self.TEST_URL, username=self.TEST_USER,
|
||||
password=self.TEST_PASS, domain_id=self.TEST_DOMAIN_ID)
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
s = session.Session(a)
|
||||
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
@ -234,6 +236,7 @@ class V3IdentityPlugin(utils.TestCase):
|
||||
a = v3.Password(self.TEST_URL, username=self.TEST_USER,
|
||||
password=self.TEST_PASS,
|
||||
project_id=self.TEST_TENANT_ID)
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
s = session.Session(a)
|
||||
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
@ -288,6 +291,7 @@ class V3IdentityPlugin(utils.TestCase):
|
||||
password='password', project_id='project',
|
||||
domain_id='domain')
|
||||
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
self.assertRaises(exceptions.AuthorizationFailure,
|
||||
a.get_token, None)
|
||||
self.assertRaises(exceptions.AuthorizationFailure,
|
||||
@ -297,6 +301,7 @@ class V3IdentityPlugin(utils.TestCase):
|
||||
self.stub_auth(json=self.TEST_RESPONSE_DICT)
|
||||
a = v3.Password(self.TEST_URL, username=self.TEST_USER,
|
||||
password=self.TEST_PASS, trust_id='trust')
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
s = session.Session(a)
|
||||
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
@ -335,6 +340,7 @@ class V3IdentityPlugin(utils.TestCase):
|
||||
password=self.TEST_PASS)
|
||||
t = v3.TokenMethod(token='foo')
|
||||
a = v3.Auth(self.TEST_URL, [p, t], trust_id='trust')
|
||||
self.assertTrue(a.has_scope_parameters)
|
||||
s = session.Session(auth=a)
|
||||
|
||||
self.assertEqual({'X-Auth-Token': self.TEST_TOKEN},
|
||||
|
Loading…
x
Reference in New Issue
Block a user