Check token_format for default token providers only.
Ignore token_format check if the configured token provider is not one of Keystone default token providers. Fixed bug 1227980 Change-Id: Id318177f186d1f68b0f3e5cba1bfaa98a4b2db24
This commit is contained in:
parent
66d7c2c4dd
commit
dc62539d6f
@ -746,12 +746,6 @@ class TestTokenProvider(tests.TestCase):
|
||||
provider=token.provider.UUID_PROVIDER)
|
||||
token.provider.Manager()
|
||||
|
||||
# custom provider should be OK too
|
||||
self.opt_in_group('signing', token_format='CUSTOM')
|
||||
self.opt_in_group('token',
|
||||
provider=token.provider.PKI_PROVIDER)
|
||||
token.provider.Manager()
|
||||
|
||||
def test_default_token_format(self):
|
||||
self.assertEqual(token.provider.Manager.get_token_provider(),
|
||||
token.provider.PKI_PROVIDER)
|
||||
@ -761,6 +755,15 @@ class TestTokenProvider(tests.TestCase):
|
||||
self.assertEqual(token.provider.Manager.get_token_provider(),
|
||||
token.provider.UUID_PROVIDER)
|
||||
|
||||
def test_default_providers_without_token_format(self):
|
||||
self.opt_in_group('token',
|
||||
provider=token.provider.UUID_PROVIDER)
|
||||
token.provider.Manager()
|
||||
|
||||
self.opt_in_group('token',
|
||||
provider=token.provider.PKI_PROVIDER)
|
||||
token.provider.Manager()
|
||||
|
||||
def test_unsupported_token_format(self):
|
||||
self.opt_in_group('signing', token_format='CUSTOM')
|
||||
self.assertRaises(exception.UnexpectedError,
|
||||
|
@ -73,10 +73,11 @@ class Manager(manager.Manager):
|
||||
# NOTE(gyee): we are deprecating CONF.signing.token_format. This
|
||||
# code is to ensure the token provider configuration agrees with
|
||||
# CONF.signing.token_format.
|
||||
if ((CONF.signing.token_format == 'PKI' and
|
||||
CONF.token.provider != PKI_PROVIDER or
|
||||
(CONF.signing.token_format == 'UUID' and
|
||||
CONF.token.provider != UUID_PROVIDER))):
|
||||
if (CONF.signing.token_format and
|
||||
((CONF.token.provider == PKI_PROVIDER and
|
||||
CONF.signing.token_format != 'PKI') or
|
||||
(CONF.token.provider == UUID_PROVIDER and
|
||||
CONF.signing.token_format != 'UUID'))):
|
||||
raise exception.UnexpectedError(
|
||||
_('keystone.conf [signing] token_format (deprecated) '
|
||||
'conflicts with keystone.conf [token] provider'))
|
||||
|
Loading…
x
Reference in New Issue
Block a user