summaryrefslogtreecommitdiff
path: root/keystone/token/providers/uuid.py
diff options
context:
space:
mode:
Diffstat (limited to 'keystone/token/providers/uuid.py')
-rw-r--r--keystone/token/providers/uuid.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/keystone/token/providers/uuid.py b/keystone/token/providers/uuid.py
index 262e10e4a..d849eefd3 100644
--- a/keystone/token/providers/uuid.py
+++ b/keystone/token/providers/uuid.py
@@ -213,7 +213,15 @@ class V3TokenDataHelper(object):
return
if access_token:
- token_data['roles'] = json.loads(access_token['requested_roles'])
+ filtered_roles = []
+ authed_role_ids = json.loads(access_token['role_ids'])
+ all_roles = self.identity_api.list_roles()
+ for role in all_roles:
+ for authed_role in authed_role_ids:
+ if authed_role == role['id']:
+ filtered_roles.append({'id': role['id'],
+ 'name': role['name']})
+ token_data['roles'] = filtered_roles
return
if CONF.trust.enabled and trust: