Skip to content

Commit dc35f26

Browse files
authored
fix glance,nova policy to workaround app credential bug (#349)
* glance: replace reader with member_or_reader * nova: override reader rule to also accept member Note: changes can be tested by creating an application credential with only the member role (via openstack application credential create --role member) and seeing if that credential permits openstack image list changes were tested via dev-in-a-box, but we don't yet have smoke tests for this issue.
1 parent 19aef30 commit dc35f26

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
member_or_reader: role:member or role:reader
3+
4+
get_image: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or project_id:%(member_id)s or 'community':%(visibility)s or 'public':%(visibility)s or 'shared':%(visibility)s))
5+
get_images: role:admin or (rule:member_or_reader and project_id:%(project_id)s)
6+
get_image_location: role:admin or (rule:member_or_reader and project_id:%(project_id)s)
7+
get_member: role:admin or rule:member_or_reader and (project_id:%(project_id)s or project_id:%(member_id)s)
8+
get_members: role:admin or rule:member_or_reader and (project_id:%(project_id)s or project_id:%(member_id)s)
9+
get_metadef_namespace: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
10+
get_metadef_namespaces: role:admin or (rule:member_or_reader and project_id:%(project_id)s)
11+
get_metadef_object: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
12+
get_metadef_objects: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
13+
list_metadef_resource_types: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
14+
get_metadef_resource_type: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
15+
get_metadef_property: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
16+
get_metadef_properties: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
17+
get_metadef_tag: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
18+
get_metadef_tags: role:admin or (rule:member_or_reader and (project_id:%(project_id)s or 'public':%(visibility)s))
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Original: #"project_reader_api": "role:reader and project_id:%(project_id)s"
2+
# replace due to keystone app credential not honoring implicit roles
3+
"project_reader_api": "(role:reader or role:member) and project_id:%(project_id)s"

0 commit comments

Comments
 (0)