summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Pryor <spryor@redhat.com>2017-05-25 17:43:27 -0400
committerSean Pryor <spryor@redhat.com>2017-05-25 17:43:27 -0400
commit8da390dc08f48fbfaf3d35c0576d65b5085a0b8c (patch)
treef3d5fc6156a3ac3a1d5a05e1394f789dc0e78541
parent310cf235864dc790f72e51804c2a8998510103e5 (diff)
downloadopenstack-access-policy-8da390dc08f48fbfaf3d35c0576d65b5085a0b8c.zip
openstack-access-policy-8da390dc08f48fbfaf3d35c0576d65b5085a0b8c.tar.gz
openstack-access-policy-8da390dc08f48fbfaf3d35c0576d65b5085a0b8c.tar.xz
Updated with poking some holes in the policy to let readonly list things
Change-Id: I0ef6e4ec7ab271f2377035ab71a0faaaef9ce463
-rw-r--r--etc/aodh/policy.json14
-rw-r--r--etc/cinder/policy.json18
-rw-r--r--etc/keystone/policy.json12
-rw-r--r--etc/manila/policy.json2
-rw-r--r--etc/mistral/policy.json98
-rw-r--r--etc/neutron/policy.json18
-rw-r--r--etc/nova/policy.json104
-rw-r--r--etc/zaqar/policy.json2
-rw-r--r--files/SevoneOSPprereqs_MOPV_1.13.txt (renamed from files/SevoneOSPprereqs_MOPV_1.12.txt)0
9 files changed, 134 insertions, 134 deletions
diff --git a/etc/aodh/policy.json b/etc/aodh/policy.json
index 38bb14d..0ebd883 100644
--- a/etc/aodh/policy.json
+++ b/etc/aodh/policy.json
@@ -3,19 +3,19 @@
"context_is_admin": "role:admin and rule:deny_readonly",
"segregation": "rule:context_is_admin",
"admin_or_owner": "rule:context_is_admin or project_id:%(project_id)s",
- "default": "rule:admin_or_owner",
+ "default": "rule:admin_or_owner and rule:deny_readonly",
- "telemetry:get_alarm": "rule:admin_or_owner",
- "telemetry:get_alarms": "rule:admin_or_owner",
- "telemetry:query_alarm": "rule:admin_or_owner",
+ "telemetry:get_alarm": "rule:admin_or_owner and rule:deny_readonly",
+ "telemetry:get_alarms": "rule:admin_or_owner and rule:deny_readonly",
+ "telemetry:query_alarm": "rule:admin_or_owner and rule:deny_readonly",
"telemetry:create_alarm": "rule:deny_readonly",
"telemetry:change_alarm": "rule:admin_or_owner and rule:deny_readonly",
"telemetry:delete_alarm": "rule:admin_or_owner and rule:deny_readonly",
- "telemetry:get_alarm_state": "rule:admin_or_owner",
+ "telemetry:get_alarm_state": "rule:admin_or_owner and rule:deny_readonly",
"telemetry:change_alarm_state": "rule:admin_or_owner and rule:deny_readonly",
- "telemetry:alarm_history": "rule:admin_or_owner",
- "telemetry:query_alarm_history": "rule:admin_or_owner"
+ "telemetry:alarm_history": "rule:admin_or_owner and rule:deny_readonly",
+ "telemetry:query_alarm_history": "rule:admin_or_owner and rule:deny_readonly"
}
diff --git a/etc/cinder/policy.json b/etc/cinder/policy.json
index 585b31a..b1d23d1 100644
--- a/etc/cinder/policy.json
+++ b/etc/cinder/policy.json
@@ -2,7 +2,7 @@
"deny_readonly": "not role:readonly",
"context_is_admin": "role:admin and rule:deny_readonly",
"admin_or_owner": "is_admin:True or project_id:%(project_id)s",
- "default": "rule:admin_or_owner",
+ "default": "rule:admin_or_owner and rule:deny_readonly",
"admin_api": "is_admin:True",
@@ -33,13 +33,13 @@
"volume_extension:types_extra_specs": "rule:admin_api",
"volume_extension:access_types_qos_specs_id": "rule:admin_api",
"volume_extension:access_types_extra_specs": "rule:admin_api",
- "volume_extension:volume_type_access": "rule:admin_or_owner",
+ "volume_extension:volume_type_access": "rule:admin_or_owner and rule:deny_readonly",
"volume_extension:volume_type_access:addProjectAccess": "rule:admin_api and rule:deny_readonly",
"volume_extension:volume_type_access:removeProjectAccess": "rule:admin_api and rule:deny_readonly",
"volume_extension:volume_type_encryption": "rule:admin_api",
- "volume_extension:volume_encryption_metadata": "rule:admin_or_owner",
- "volume_extension:extended_snapshot_attributes": "rule:admin_or_owner",
- "volume_extension:volume_image_metadata": "rule:admin_or_owner",
+ "volume_extension:volume_encryption_metadata": "rule:admin_or_owner and rule:deny_readonly",
+ "volume_extension:extended_snapshot_attributes": "rule:admin_or_owner and rule:deny_readonly",
+ "volume_extension:volume_image_metadata": "rule:admin_or_owner and rule:deny_readonly",
"volume_extension:quotas:show": "",
"volume_extension:quotas:update": "rule:admin_api and rule:deny_readonly",
@@ -61,7 +61,7 @@
"volume_extension:volume_actions:upload_image": "rule:admin_or_owner and rule:deny_readonly",
"volume_extension:volume_host_attribute": "rule:admin_api",
- "volume_extension:volume_tenant_attribute": "rule:admin_or_owner",
+ "volume_extension:volume_tenant_attribute": "rule:admin_or_owner and rule:deny_readonly",
"volume_extension:volume_mig_status_attribute": "rule:admin_api",
"volume_extension:hosts": "rule:admin_api",
"volume_extension:services:index": "rule:admin_api",
@@ -114,7 +114,7 @@
"group:group_types_manage": "rule:admin_api",
"group:group_types_specs": "rule:admin_api",
"group:access_group_types_specs": "rule:admin_api",
- "group:group_type_access": "rule:admin_or_owner",
+ "group:group_type_access": "rule:admin_or_owner and rule:deny_readonly",
"group:create" : "rule:deny_readonly",
"group:delete": "rule:admin_or_owner and rule:deny_readonly",
@@ -130,8 +130,8 @@
"scheduler_extension:scheduler_stats:get_pools" : "rule:admin_api",
"message:delete": "rule:admin_or_owner and rule:deny_readonly",
- "message:get": "rule:admin_or_owner",
- "message:get_all": "rule:admin_or_owner",
+ "message:get": "rule:admin_or_owner and rule:deny_readonly",
+ "message:get_all": "rule:admin_or_owner and rule:deny_readonly",
"clusters:get": "rule:admin_api",
"clusters:get_all": "rule:admin_api",
diff --git a/etc/keystone/policy.json b/etc/keystone/policy.json
index 77b4c17..f0177fa 100644
--- a/etc/keystone/policy.json
+++ b/etc/keystone/policy.json
@@ -37,21 +37,21 @@
"identity:get_project": "rule:admin_required or project_id:%(target.project.id)s",
"identity:list_projects": "rule:admin_required",
- "identity:list_user_projects": "rule:admin_or_owner",
+ "identity:list_user_projects": "rule:admin_or_owner and rule:deny_readonly",
"identity:create_project": "rule:admin_required",
"identity:update_project": "rule:admin_required",
"identity:delete_project": "rule:admin_required",
- "identity:get_user": "rule:admin_or_owner",
+ "identity:get_user": "rule:admin_or_owner and rule:deny_readonly",
"identity:list_users": "rule:admin_required",
"identity:create_user": "rule:admin_required",
"identity:update_user": "rule:admin_required",
"identity:delete_user": "rule:admin_required",
- "identity:change_password": "rule:admin_or_owner",
+ "identity:change_password": "rule:admin_or_owner and rule:deny_readonly",
"identity:get_group": "rule:admin_required",
"identity:list_groups": "rule:admin_required",
- "identity:list_groups_for_user": "rule:admin_or_owner",
+ "identity:list_groups_for_user": "rule:admin_or_owner and rule:deny_readonly",
"identity:create_group": "rule:admin_required",
"identity:update_group": "rule:admin_required",
"identity:delete_group": "rule:admin_required",
@@ -67,8 +67,8 @@
"identity:delete_credential": "rule:admin_required",
"identity:ec2_get_credential": "rule:admin_required or (rule:owner and user_id:%(target.credential.user_id)s)",
- "identity:ec2_list_credentials": "rule:admin_or_owner",
- "identity:ec2_create_credential": "rule:admin_or_owner",
+ "identity:ec2_list_credentials": "rule:admin_or_owner and rule:deny_readonly",
+ "identity:ec2_create_credential": "rule:admin_or_owner and rule:deny_readonly",
"identity:ec2_delete_credential": "rule:admin_required or (rule:owner and user_id:%(target.credential.user_id)s)",
"identity:get_role": "rule:admin_required",
diff --git a/etc/manila/policy.json b/etc/manila/policy.json
index db1408f..f2002ff 100644
--- a/etc/manila/policy.json
+++ b/etc/manila/policy.json
@@ -2,7 +2,7 @@
"deny_readonly": "not role:readonly",
"context_is_admin": "role:admin and rule:deny_readonly",
"admin_or_owner": "is_admin:True or project_id:%(project_id)s",
- "default": "rule:admin_or_owner",
+ "default": "rule:admin_or_owner and rule:deny_readonly",
"admin_api": "is_admin:True",
diff --git a/etc/mistral/policy.json b/etc/mistral/policy.json
index 3278023..a5787af 100644
--- a/etc/mistral/policy.json
+++ b/etc/mistral/policy.json
@@ -1,64 +1,64 @@
{
"admin_only": "is_admin:True",
"admin_or_owner": "is_admin:True or project_id:%(project_id)s",
- "default": "rule:admin_or_owner",
+ "default": "rule:admin_or_owner and rule:deny_readonly",
- "action_executions:delete": "rule:admin_or_owner",
- "action_execution:create": "rule:admin_or_owner",
- "action_executions:get": "rule:admin_or_owner",
- "action_executions:list": "rule:admin_or_owner",
- "action_executions:update": "rule:admin_or_owner",
+ "action_executions:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "action_execution:create": "rule:admin_or_owner and rule:deny_readonly",
+ "action_executions:get": "rule:admin_or_owner and rule:deny_readonly",
+ "action_executions:list": "rule:admin_or_owner and rule:deny_readonly",
+ "action_executions:update": "rule:admin_or_owner and rule:deny_readonly",
- "actions:create": "rule:admin_or_owner",
- "actions:delete": "rule:admin_or_owner",
- "actions:get": "rule:admin_or_owner",
- "actions:list": "rule:admin_or_owner",
- "actions:update": "rule:admin_or_owner",
+ "actions:create": "rule:admin_or_owner and rule:deny_readonly",
+ "actions:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "actions:get": "rule:admin_or_owner and rule:deny_readonly",
+ "actions:list": "rule:admin_or_owner and rule:deny_readonly",
+ "actions:update": "rule:admin_or_owner and rule:deny_readonly",
- "cron_triggers:create": "rule:admin_or_owner",
- "cron_triggers:delete": "rule:admin_or_owner",
- "cron_triggers:get": "rule:admin_or_owner",
- "cron_triggers:list": "rule:admin_or_owner",
+ "cron_triggers:create": "rule:admin_or_owner and rule:deny_readonly",
+ "cron_triggers:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "cron_triggers:get": "rule:admin_or_owner and rule:deny_readonly",
+ "cron_triggers:list": "rule:admin_or_owner and rule:deny_readonly",
- "environments:create": "rule:admin_or_owner",
- "environments:delete": "rule:admin_or_owner",
- "environments:get": "rule:admin_or_owner",
- "environments:list": "rule:admin_or_owner",
- "environments:update": "rule:admin_or_owner",
+ "environments:create": "rule:admin_or_owner and rule:deny_readonly",
+ "environments:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "environments:get": "rule:admin_or_owner and rule:deny_readonly",
+ "environments:list": "rule:admin_or_owner and rule:deny_readonly",
+ "environments:update": "rule:admin_or_owner and rule:deny_readonly",
- "executions:create": "rule:admin_or_owner",
- "executions:delete": "rule:admin_or_owner",
- "executions:get": "rule:admin_or_owner",
- "executions:list": "rule:admin_or_owner",
- "executions:update": "rule:admin_or_owner",
+ "executions:create": "rule:admin_or_owner and rule:deny_readonly",
+ "executions:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "executions:get": "rule:admin_or_owner and rule:deny_readonly",
+ "executions:list": "rule:admin_or_owner and rule:deny_readonly",
+ "executions:update": "rule:admin_or_owner and rule:deny_readonly",
- "members:create": "rule:admin_or_owner",
- "members:delete": "rule:admin_or_owner",
- "members:get": "rule:admin_or_owner",
- "members:list": "rule:admin_or_owner",
- "members:update": "rule:admin_or_owner",
+ "members:create": "rule:admin_or_owner and rule:deny_readonly",
+ "members:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "members:get": "rule:admin_or_owner and rule:deny_readonly",
+ "members:list": "rule:admin_or_owner and rule:deny_readonly",
+ "members:update": "rule:admin_or_owner and rule:deny_readonly",
- "services:list": "rule:admin_or_owner",
+ "services:list": "rule:admin_or_owner and rule:deny_readonly",
- "tasks:get": "rule:admin_or_owner",
- "tasks:list": "rule:admin_or_owner",
- "tasks:update": "rule:admin_or_owner",
+ "tasks:get": "rule:admin_or_owner and rule:deny_readonly",
+ "tasks:list": "rule:admin_or_owner and rule:deny_readonly",
+ "tasks:update": "rule:admin_or_owner and rule:deny_readonly",
- "workbooks:create": "rule:admin_or_owner",
- "workbooks:delete": "rule:admin_or_owner",
- "workbooks:get": "rule:admin_or_owner",
- "workbooks:list": "rule:admin_or_owner",
- "workbooks:update": "rule:admin_or_owner",
+ "workbooks:create": "rule:admin_or_owner and rule:deny_readonly",
+ "workbooks:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "workbooks:get": "rule:admin_or_owner and rule:deny_readonly",
+ "workbooks:list": "rule:admin_or_owner and rule:deny_readonly",
+ "workbooks:update": "rule:admin_or_owner and rule:deny_readonly",
- "workflows:create": "rule:admin_or_owner",
- "workflows:delete": "rule:admin_or_owner",
- "workflows:get": "rule:admin_or_owner",
- "workflows:list": "rule:admin_or_owner",
- "workflows:update": "rule:admin_or_owner",
+ "workflows:create": "rule:admin_or_owner and rule:deny_readonly",
+ "workflows:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "workflows:get": "rule:admin_or_owner and rule:deny_readonly",
+ "workflows:list": "rule:admin_or_owner and rule:deny_readonly",
+ "workflows:update": "rule:admin_or_owner and rule:deny_readonly",
- "event_triggers:create": "rule:admin_or_owner",
- "event_triggers:delete": "rule:admin_or_owner",
- "event_triggers:get": "rule:admin_or_owner",
- "event_triggers:list": "rule:admin_or_owner",
- "event_triggers:update": "rule:admin_or_owner"
+ "event_triggers:create": "rule:admin_or_owner and rule:deny_readonly",
+ "event_triggers:delete": "rule:admin_or_owner and rule:deny_readonly",
+ "event_triggers:get": "rule:admin_or_owner and rule:deny_readonly",
+ "event_triggers:list": "rule:admin_or_owner and rule:deny_readonly",
+ "event_triggers:update": "rule:admin_or_owner and rule:deny_readonly"
}
diff --git a/etc/neutron/policy.json b/etc/neutron/policy.json
index e4ea2d7..b397281 100644
--- a/etc/neutron/policy.json
+++ b/etc/neutron/policy.json
@@ -12,7 +12,7 @@
"shared_subnetpools": "field:subnetpools:shared=True",
"shared_address_scopes": "field:address_scopes:shared=True",
"external": "field:networks:router:external=True",
- "default": "rule:admin_or_owner",
+ "default": "rule:admin_or_owner and rule:deny_readonly",
"create_subnet": "rule:admin_or_network_owner and rule:deny_readonly",
"create_subnet:segment_id": "rule:admin_only",
@@ -101,7 +101,7 @@
"create_router:external_gateway_info:enable_snat": "rule:admin_only",
"create_router:distributed": "rule:admin_only",
"create_router:ha": "rule:admin_only",
- "get_router": "rule:admin_or_owner",
+ "get_router": "rule:admin_or_owner and rule:deny_readonly",
"get_router:distributed": "rule:admin_only",
"update_router:external_gateway_info:enable_snat": "rule:admin_only",
"update_router:distributed": "rule:admin_only",
@@ -141,7 +141,7 @@
"create_floatingip:floating_ip_address": "rule:admin_only",
"update_floatingip": "rule:admin_or_owner and rule:deny_readonly",
"delete_floatingip": "rule:admin_or_owner and rule:deny_readonly",
- "get_floatingip": "rule:admin_or_owner",
+ "get_floatingip": "rule:admin_or_owner and rule:deny_readonly",
"create_network_profile": "rule:admin_only",
"update_network_profile": "rule:admin_only",
@@ -196,18 +196,18 @@
"restrict_wildcard": "(not field:rbac_policy:target_tenant=*) or rule:admin_only",
"create_rbac_policy": "rule:deny_readonly",
"create_rbac_policy:target_tenant": "rule:restrict_wildcard",
- "update_rbac_policy": "rule:admin_or_owner",
- "update_rbac_policy:target_tenant": "rule:restrict_wildcard and rule:admin_or_owner",
- "get_rbac_policy": "rule:admin_or_owner",
- "delete_rbac_policy": "rule:admin_or_owner",
+ "update_rbac_policy": "rule:admin_or_owner and rule:deny_readonly",
+ "update_rbac_policy:target_tenant": "rule:restrict_wildcard and rule:admin_or_owner and rule:deny_readonly",
+ "get_rbac_policy": "rule:admin_or_owner and rule:deny_readonly",
+ "delete_rbac_policy": "rule:admin_or_owner and rule:deny_readonly",
"create_flavor_service_profile": "rule:admin_only",
"delete_flavor_service_profile": "rule:admin_only",
"get_flavor_service_profile": "rule:regular_user",
- "get_auto_allocated_topology": "rule:admin_or_owner",
+ "get_auto_allocated_topology": "rule:admin_or_owner and rule:deny_readonly",
"create_trunk": "rule:regular_user and rule:deny_readonly",
- "get_trunk": "rule:admin_or_owner",
+ "get_trunk": "rule:admin_or_owner and rule:deny_readonly",
"delete_trunk": "rule:admin_or_owner and rule:deny_readonly",
"get_subports": "",
"add_subports": "rule:admin_or_owner and rule:deny_readonly",
diff --git a/etc/nova/policy.json b/etc/nova/policy.json
index f0843d5..12e5042 100644
--- a/etc/nova/policy.json
+++ b/etc/nova/policy.json
@@ -10,49 +10,49 @@
"admin_only": "rule:context_is_admin and rule:deny_readonly",
"regular_user": "rule:deny_readonly",
- "os_compute_api:os-extended-volumes": "rule:admin_or_owner",
+ "os_compute_api:os-extended-volumes": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:servers:create:forced_host": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-volumes:discoverable": "@",
- "os_compute_api:os-fping": "rule:admin_or_owner",
- "os_compute_api:os-floating-ips": "rule:admin_or_owner",
+ "os_compute_api:os-fping": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:os-floating-ips": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:servers:start": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-hosts:discoverable": "@",
"os_compute_api:os-server-tags:delete_all": "@",
"os_compute_api:servers:index:get_all_tenants": "rule:admin_api",
"os_compute_api:os-console-auth-tokens:discoverable": "@",
- "os_compute_api:os-suspend-server:resume": "rule:admin_or_owner",
- "os_compute_api:os-tenant-networks": "rule:admin_or_owner",
+ "os_compute_api:os-suspend-server:resume": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:os-tenant-networks": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:limits:discoverable": "@",
"os_compute_api:os-evacuate:discoverable": "@",
"os_compute_api:os-rescue:discoverable": "@",
"os_compute_api:os-volumes-attachments:index": "rule:admin_or_owner",
"context_is_admin": "role:admin and rule:deny_readonly",
"os_compute_api:server-metadata:index": "rule:admin_or_owner",
- "os_compute_api:os-server-groups": "rule:admin_or_owner",
+ "os_compute_api:os-server-groups": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-cells:discoverable": "@",
"os_compute_api:os-aggregates:set_metadata": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-deferred-delete:discoverable": "@",
"os_compute_api:os-certificates:discoverable": "@",
- "os_compute_api:server-metadata:show": "rule:admin_or_owner",
+ "os_compute_api:server-metadata:show": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-hide-server-addresses:discoverable": "@",
"os_compute_api:os-extended-server-attributes": "rule:admin_api",
"os_compute_api:os-remote-consoles:discoverable": "@",
"os_compute_api:os-agents": "rule:admin_api",
"os_compute_api:os-flavor-extra-specs:show": "rule:admin_or_owner",
"os_compute_api:os-attach-interfaces:delete": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:os-extended-availability-zone": "rule:admin_or_owner",
+ "os_compute_api:os-extended-availability-zone": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-instance-actions:events": "rule:admin_api",
"os_compute_api:os-scheduler-hints:discoverable": "@",
"os_compute_api:os-flavor-manage": "rule:admin_api",
"os_compute_api:server-metadata:create": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:os-shelve:shelve": "rule:admin_or_owner",
+ "os_compute_api:os-shelve:shelve": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:server-metadata:discoverable": "@",
"os_compute_api:os-aggregates:add_host": "rule:admin_api",
"os_compute_api:os-cells:update": "rule:admin_api",
"os_compute_api:os-server-diagnostics": "rule:admin_api",
"os_compute_api:versions:discoverable": "@",
"os_compute_api:os-admin-actions:discoverable": "@",
- "os_compute_api:servers:update": "rule:admin_or_owner",
+ "os_compute_api:servers:update": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-migrations:index": "rule:admin_api",
"os_compute_api:os-attach-interfaces:create": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-volumes-attachments:create": "rule:admin_or_owner and rule:deny_readonly",
@@ -60,25 +60,25 @@
"os_compute_api:os-volumes-attachments:show": "rule:admin_or_owner",
"os_compute_api:os-block-device-mapping-v1:discoverable": "@",
"os_compute_api:os-admin-actions:reset_state": "rule:admin_api and rule:deny_readonly",
- "os_compute_api:os-flavor-rxtx": "rule:admin_or_owner",
+ "os_compute_api:os-flavor-rxtx": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:servers:show": "rule:admin_or_owner",
"os_compute_api:os-fping:all_tenants": "rule:admin_api",
"os_compute_api:os-flavor-extra-specs:create": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-server-tags:index": "@",
- "os_compute_api:servers:confirm_resize": "rule:admin_or_owner",
+ "os_compute_api:servers:confirm_resize": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-networks:discoverable": "@",
"os_compute_api:os-aggregates:discoverable": "@",
"os_compute_api:os-volumes-attachments:discoverable": "@",
"os_compute_api:os-floating-ips-bulk:discoverable": "@",
"os_compute_api:os-flavor-extra-specs:discoverable": "@",
- "os_compute_api:os-consoles:show": "rule:admin_or_owner",
+ "os_compute_api:os-consoles:show": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:servers:migrations:show": "rule:admin_api",
"os_compute_api:os-admin-actions:inject_network_info": "rule:admin_api",
"os_compute_api:image-metadata:discoverable": "@",
"os_compute_api:os-migrate-server:migrate": "rule:admin_api and rule:deny_readonly",
- "os_compute_api:extensions": "rule:admin_or_owner",
+ "os_compute_api:extensions": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-simple-tenant-usage:show": "rule:admin_or_owner",
- "os_compute_api:os-security-groups": "rule:admin_or_owner",
+ "os_compute_api:os-security-groups": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-migrate-server:discoverable": "@",
"os_compute_api:os-fping:discoverable": "@",
"os_compute_api:os-keypairs:discoverable": "@",
@@ -87,8 +87,8 @@
"os_compute_api:os-pci:index": "rule:admin_api",
"os_compute_api:ips:discoverable": "@",
"os_compute_api:os-flavor-extra-specs:update": "rule:admin_api",
- "os_compute_api:os-pause-server:unpause": "rule:admin_or_owner",
- "os_compute_api:os-availability-zone:list": "rule:admin_or_owner",
+ "os_compute_api:os-pause-server:unpause": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:os-availability-zone:list": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-pause-server:discoverable": "@",
"os_compute_api:server-migrations:discoverable": "@",
"os_compute_api:extension_info:discoverable": "@",
@@ -96,21 +96,21 @@
"admin_or_owner": "is_admin:True or project_id:%(project_id)s",
"os_compute_api:os-server-diagnostics:discoverable": "@",
"os_compute_api:os-multiple-create:discoverable": "@ and rule:deny_readonly",
- "os_compute_api:servers:trigger_crash_dump": "rule:admin_or_owner",
+ "os_compute_api:servers:trigger_crash_dump": "rule:admin_or_owner and rule:deny_readonly",
"cells_scheduler_filter:TargetCellFilter": "is_admin:True",
"network:attach_external_network": "is_admin:True",
"os_compute_api:os-cloudpipe": "rule:admin_api",
"os_compute_api:os-certificates:create": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:os-server-usage": "rule:admin_or_owner",
+ "os_compute_api:os-server-usage": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-services": "rule:admin_api",
"os_compute_api:servers:migrations:force_complete": "rule:admin_api and rule:deny_readonly",
"os_compute_api:servers:index": "rule:admin_or_owner",
"os_compute_api:os-keypairs:index": "rule:admin_api or user_id:%(user_id)s",
"os_compute_api:os-flavor-rxtx:discoverable": "@",
- "os_compute_api:os-suspend-server:suspend": "rule:admin_or_owner",
+ "os_compute_api:os-suspend-server:suspend": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-admin-actions": "rule:admin_api",
"os_compute_api:os-server-tags:update_all": "@",
- "os_compute_api:os-floating-ip-dns": "rule:admin_or_owner",
+ "os_compute_api:os-floating-ip-dns": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-quota-sets:update": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-floating-ip-pools:discoverable": "@",
"os_compute_api:os-console-output:discoverable": "@",
@@ -122,32 +122,32 @@
"os_compute_api:os-instance-usage-audit-log:discoverable": "@",
"os_compute_api:os-tenant-networks:discoverable": "@",
"os_compute_api:os-fixed-ips:discoverable": "@",
- "os_compute_api:os-extended-status": "rule:admin_or_owner",
- "os_compute_api:os-instance-actions": "rule:admin_or_owner",
- "os_compute_api:server-metadata:update_all": "rule:admin_or_owner",
- "os_compute_api:servers:reboot": "rule:admin_or_owner",
+ "os_compute_api:os-extended-status": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:os-instance-actions": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:server-metadata:update_all": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:servers:reboot": "rule:admin_or_owner and rule:deny_readonly",
"cells_scheduler_filter:DifferentCellFilter": "is_admin:True",
"os_compute_api:os-availability-zone:discoverable": "@",
"os_compute_api:os-extended-server-attributes:discoverable": "@",
- "os_compute_api:os-server-password": "rule:admin_or_owner",
+ "os_compute_api:os-server-password": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-suspend-server:discoverable": "@",
"os_compute_api:servers:delete": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-migrate-server:migrate_live": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-console-auth-tokens": "rule:admin_api",
"os_compute_api:ips:show": "rule:admin_or_owner",
"os_compute_api:os-hypervisors:discoverable": "@",
- "os_compute_api:os-attach-interfaces": "rule:admin_or_owner",
+ "os_compute_api:os-attach-interfaces": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:servers:migrations:delete": "rule:admin_api and rule:deny_readonly",
- "os_compute_api:os-multinic": "rule:admin_or_owner",
+ "os_compute_api:os-multinic": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-extended-availability-zone:discoverable": "@",
- "os_compute_api:os-shelve:unshelve": "rule:admin_or_owner",
+ "os_compute_api:os-shelve:unshelve": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-lock-server:discoverable": "@",
"os_compute_api:os-shelve:shelve_offload": "rule:admin_api",
"os_compute_api:os-evacuate": "rule:admin_api",
"os_compute_api:servers:create": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-aggregates:remove_host": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-baremetal-nodes:discoverable": "@",
- "os_compute_api:os-console-output": "rule:admin_or_owner",
+ "os_compute_api:os-console-output": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-aggregates:update": "rule:admin_api",
"os_compute_api:images:discoverable": "@",
"os_compute_api:os-keypairs:create": "rule:admin_api or user_id:%(user_id)s",
@@ -155,9 +155,9 @@
"os_compute_api:servers:create_image": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-consoles:discoverable": "@",
"os_compute_api:os-consoles:create": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:servers:revert_resize": "rule:admin_or_owner",
+ "os_compute_api:servers:revert_resize": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-keypairs:delete": "rule:admin_api or user_id:%(user_id)s",
- "os_compute_api:os-pause-server:pause": "rule:admin_or_owner",
+ "os_compute_api:os-pause-server:pause": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-floating-ips-bulk": "rule:admin_api",
"os_compute_api:os-simple-tenant-usage:list": "rule:admin_api",
"os_compute_api:os-quota-class-sets:show": "is_admin:True or quota_class:%(quota_class)s",
@@ -167,7 +167,7 @@
"os_compute_api:os-consoles:delete": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-networks-associate": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-remote-consoles": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:limits": "rule:admin_or_owner",
+ "os_compute_api:limits": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-cells:create": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-create-backup:discoverable": "@",
"os_compute_api:os-agents:discoverable": "@",
@@ -175,31 +175,31 @@
"os_compute_api:os-security-group-default-rules:discoverable": "@",
"os_compute_api:os-aggregates:delete": "rule:admin_api and rule:deny_readonly",
"os_compute_api:server-metadata:delete": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:os-rescue": "rule:admin_or_owner",
+ "os_compute_api:os-rescue": "rule:admin_or_owner and rule:deny_readonly",
"admin_api": "is_admin:True",
"os_compute_api:os-server-tags:delete": "@",
"os_compute_api:flavors:discoverable": "@",
"os_compute_api:os-cloudpipe:discoverable": "@",
"os_compute_api:os-fixed-ips": "rule:admin_api",
"os_compute_api:os-admin-password:discoverable": "@",
- "os_compute_api:servers:resize": "rule:admin_or_owner",
+ "os_compute_api:servers:resize": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-flavor-access:add_tenant_access": "rule:admin_api",
- "os_compute_api:os-pci:pci_servers": "rule:admin_or_owner",
+ "os_compute_api:os-pci:pci_servers": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-server-password:discoverable": "@",
"os_compute_api:os-cells": "rule:admin_api",
"os_compute_api:os-admin-actions:reset_network": "rule:admin_api and rule:deny_readonly",
"os_compute_api:image-size:discoverable": "@",
- "os_compute_api:os-certificates:show": "rule:admin_or_owner",
- "os_compute_api:os-config-drive": "rule:admin_or_owner",
- "os_compute_api:os-networks:view": "rule:admin_or_owner",
- "os_compute_api:os-consoles:index": "rule:admin_or_owner",
+ "os_compute_api:os-certificates:show": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:os-config-drive": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:os-networks:view": "rule:admin_or_owner and rule:deny_readonly",
+ "os_compute_api:os-consoles:index": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-quota-class-sets:discoverable": "@",
"os_compute_api:os-used-limits": "rule:admin_api",
"os_compute_api:os-flavor-access:discoverable": "@",
"os_compute_api:os-quota-sets:defaults": "@",
"os_compute_api:servers:detail": "rule:admin_or_owner",
"os_compute_api:os-server-external-events:create": "rule:admin_api",
- "os_compute_api:os-lock-server:lock": "rule:admin_or_owner",
+ "os_compute_api:os-lock-server:lock": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-block-device-mapping:discoverable": "@",
"os_compute_api:os-flavor-extra-specs:index": "rule:admin_or_owner",
"os_compute_api:os-extended-volumes:discoverable": "@",
@@ -212,27 +212,27 @@
"os_compute_api:os-assisted-volume-snapshots:create": "rule:admin_api",
"os_compute_api:os-attach-interfaces:discoverable": "@",
"os_compute_api:servers:create:attach_volume": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:os-quota-sets:show": "rule:admin_or_owner",
+ "os_compute_api:os-quota-sets:show": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-server-tags:update": "@",
"os_compute_api:os-quota-class-sets:update": "rule:admin_api",
- "os_compute_api:flavors": "rule:admin_or_owner",
+ "os_compute_api:flavors": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-flavor-access:remove_tenant_access": "rule:admin_api and rule:deny_readonly",
- "os_compute_api:os-floating-ip-pools": "rule:admin_or_owner",
+ "os_compute_api:os-floating-ip-pools": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:servers:discoverable": "@",
"os_compute_api:os-flavor-manage:discoverable": "@",
"os_compute_api:os-keypairs:show": "rule:admin_api or user_id:%(user_id)s",
- "os_compute_api:image-size": "rule:admin_or_owner",
+ "os_compute_api:image-size": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-deferred-delete": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-hide-server-addresses": "is_admin:False",
- "os_compute_api:os-admin-password": "rule:admin_or_owner",
+ "os_compute_api:os-admin-password": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-server-tags:show": "@",
- "os_compute_api:servers:rebuild": "rule:admin_or_owner",
+ "os_compute_api:servers:rebuild": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-used-limits:discoverable": "@",
"os_compute_api:os-quota-sets:delete": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-floating-ip-dns:discoverable": "@",
"os_compute_api:os-availability-zone:detail": "rule:admin_api",
"os_compute_api:os-server-usage:discoverable": "@",
- "os_compute_api:os-keypairs": "rule:admin_or_owner",
+ "os_compute_api:os-keypairs": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-quota-sets:discoverable": "@",
"os_compute_api:os-virtual-interfaces:discoverable": "@",
"os_compute_api:os-aggregates:show": "rule:admin_api",
@@ -241,21 +241,21 @@
"os_compute_api:os-services:discoverable": "@",
"os_compute_api:extensions:discoverable": "@",
"os_compute_api:servers:stop": "rule:admin_or_owner and rule:deny_readonly",
- "os_compute_api:os-volumes": "rule:admin_or_owner",
+ "os_compute_api:os-volumes": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-server-tags:discoverable": "@",
"os_compute_api:os-baremetal-nodes": "rule:admin_api",
- "os_compute_api:os-virtual-interfaces": "rule:admin_or_owner",
+ "os_compute_api:os-virtual-interfaces": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-lock-server:unlock:unlock_override": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-simple-tenant-usage:discoverable": "@",
"os_compute_api:os-networks": "rule:admin_api",
"os_compute_api:os-pci:discoverable": "@",
- "os_compute_api:os-lock-server:unlock": "rule:admin_or_owner",
+ "os_compute_api:os-lock-server:unlock": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-cells:delete": "rule:admin_api and rule:deny_readonly",
"os_compute_api:os-floating-ips:discoverable": "@",
"os_compute_api:os-security-group-default-rules": "rule:admin_api",
"os_compute_api:os-user-data:discoverable": "@",
"os_compute_api:servers:migrations:index": "rule:admin_api",
- "os_compute_api:os-flavor-access": "rule:admin_or_owner",
+ "os_compute_api:os-flavor-access": "rule:admin_or_owner and rule:deny_readonly",
"os_compute_api:os-multinic:discoverable": "@",
"os_compute_api:os-networks-associate:discoverable": "@",
"os_compute_api:os-quota-sets:detail": "rule:admin_api",
diff --git a/etc/zaqar/policy.json b/etc/zaqar/policy.json
index 259625e..9dff654 100644
--- a/etc/zaqar/policy.json
+++ b/etc/zaqar/policy.json
@@ -2,7 +2,7 @@
"deny_readonly": "not role:readonly",
"context_is_admin": "role:admin and rule:deny_readonly",
"admin_or_owner": "is_admin:True or project_id:%(project_id)s",
- "default": "rule:admin_or_owner",
+ "default": "rule:admin_or_owner and rule:deny_readonly",
"queues:get_all": "",
"queues:create": "rule:deny_readonly",
diff --git a/files/SevoneOSPprereqs_MOPV_1.12.txt b/files/SevoneOSPprereqs_MOPV_1.13.txt
index cfcfb20..cfcfb20 100644
--- a/files/SevoneOSPprereqs_MOPV_1.12.txt
+++ b/files/SevoneOSPprereqs_MOPV_1.13.txt