summaryrefslogtreecommitdiffstats
path: root/etc/neutron/policy.json
diff options
context:
space:
mode:
Diffstat (limited to 'etc/neutron/policy.json')
-rw-r--r--etc/neutron/policy.json53
1 files changed, 26 insertions, 27 deletions
diff --git a/etc/neutron/policy.json b/etc/neutron/policy.json
index 7e6913f..b1f9a87 100644
--- a/etc/neutron/policy.json
+++ b/etc/neutron/policy.json
@@ -1,13 +1,12 @@
{
+
"readonly": "(project_id:%(project_id)s and role:readonly)",
- "domain_readonly": "(domain_id:%(domain_id)s and role:readonly)",
- "global_readonly": "(role:readonly)",
+ "global_readonly": "(role:global_readonly)",
"_member_role": "(role:member or role:_member_)",
"member": "(project_id:%(project_id)s and rule:_member_role)",
- "domain_member": "(domain_id:%(domain_id)s and rule:_member_role)",
"admin": "(is_admin:True or role:admin)",
"owner": "(user_id:%(user_id)s and rule:_member_role)",
-
+
"context_is_advsvc": "role:advsvc",
"admin_or_network_owner": "(rule:admin or rule:member or role:network_admin)",
@@ -22,7 +21,7 @@
"create_subnet": "rule:admin_or_network_owner",
"create_subnet:segment_id": "rule:admin",
"create_subnet:service_types": "rule:admin",
- "get_subnet": "rule:admin or rule:member or rule:shared or rule:readonly or rule:readonly",
+ "get_subnet": "rule:admin or rule:member or rule:shared or rule:readonly or rule:global_readonly",
"get_subnet:segment_id": "rule:admin",
"update_subnet": "rule:admin_or_network_owner",
"update_subnet:service_types": "rule:admin",
@@ -31,7 +30,7 @@
"create_subnetpool": "rule:admin or rule:member",
"create_subnetpool:shared": "rule:admin",
"create_subnetpool:is_default": "rule:admin",
- "get_subnetpool": "rule:admin or rule:member or rule:shared_subnetpools or rule:readonly",
+ "get_subnetpool": "rule:admin or rule:member or rule:shared_subnetpools or rule:readonly or rule:global_readonly",
"update_subnetpool": "rule:admin or rule:member",
"update_subnetpool:is_default": "rule:admin",
"delete_subnetpool": "rule:admin or rule:member",
@@ -44,12 +43,12 @@
"delete_address_scope": "rule:admin or rule:member",
"create_network": "rule:admin or rule:member",
- "get_network": "rule:admin or rule:member or rule:readonly or rule:shared or rule:external or rule:context_is_advsvc",
- "get_network:router:external": "rule:admin or rule:member or rule:readonly",
- "get_network:segments": "rule:admin or rule:readonly",
- "get_network:provider:network_type": "rule:admin or rule:readonly",
- "get_network:provider:physical_network": "rule:admin or rule:readonly",
- "get_network:provider:segmentation_id": "rule:admin or rule:readonly",
+ "get_network": "rule:admin or rule:member or rule:readonly or rule:global_readonly or rule:shared or rule:external or rule:context_is_advsvc",
+ "get_network:router:external": "rule:admin or rule:member or rule:readonly or rule:global_readonly",
+ "get_network:segments": "rule:admin or rule:readonly or rule:global_readonly",
+ "get_network:provider:network_type": "rule:admin or rule:readonly or rule:global_readonly",
+ "get_network:provider:physical_network": "rule:admin or rule:readonly or rule:global_readonly",
+ "get_network:provider:segmentation_id": "rule:admin or rule:readonly or rule:global_readonly",
"get_network:queue_id": "rule:admin",
"get_network_ip_availabilities": "rule:admin",
"get_network_ip_availability": "rule:admin",
@@ -84,12 +83,12 @@
"create_port:binding:profile": "rule:admin",
"create_port:mac_learning_enabled": "rule:context_is_advsvc or rule:admin_or_network_owner",
"create_port:allowed_address_pairs": "rule:admin_or_network_owner",
- "get_port": "rule:context_is_advsvc or rule:admin_owner_or_network_owner or rule:readonly",
+ "get_port": "rule:context_is_advsvc or rule:admin_owner_or_network_owner or rule:readonly or rule:global_readonly",
"get_port:queue_id": "rule:admin",
- "get_port:binding:vif_type": "rule:admin or rule:readonly",
- "get_port:binding:vif_details": "rule:admin or rule:readonly",
- "get_port:binding:host_id": "rule:admin or rule:readonly",
- "get_port:binding:profile": "rule:admin or rule:readonly",
+ "get_port:binding:vif_type": "rule:admin or rule:readonly or rule:global_readonly",
+ "get_port:binding:vif_details": "rule:admin or rule:readonly or rule:global_readonly",
+ "get_port:binding:host_id": "rule:admin or rule:readonly or rule:global_readonly",
+ "get_port:binding:profile": "rule:admin or rule:readonly or rule:global_readonly",
"update_port": "rule:admin or rule:member or rule:context_is_advsvc",
"update_port:device_owner": "not rule:network_device or rule:context_is_advsvc or rule:admin_or_network_owner",
"update_port:mac_address": "rule:admin or rule:context_is_advsvc",
@@ -106,8 +105,8 @@
"create_router:external_gateway_info:enable_snat": "rule:admin",
"create_router:distributed": "rule:admin",
"create_router:ha": "rule:admin",
- "get_router": "rule:admin or rule:member or rule:readonly",
- "get_router:distributed": "rule:admin or rule:readonly",
+ "get_router": "rule:admin or rule:member or rule:readonly or rule:global_readonly",
+ "get_router:distributed": "rule:admin or rule:readonly or rule:global_readonly",
"update_router:external_gateway_info:enable_snat": "rule:admin",
"update_router:distributed": "rule:admin",
"update_router:ha": "rule:admin",
@@ -127,15 +126,15 @@
"update_agent": "rule:admin",
"delete_agent": "rule:admin",
- "get_agent": "rule:admin or rule:readonly",
+ "get_agent": "rule:admin or rule:readonly or rule:global_readonly",
"create_dhcp-network": "rule:admin",
"delete_dhcp-network": "rule:admin",
- "get_dhcp-networks": "rule:admin or rule:readonly",
+ "get_dhcp-networks": "rule:admin or rule:readonly or rule:global_readonly",
"create_l3-router": "rule:admin",
"delete_l3-router": "rule:admin",
- "get_l3-routers": "rule:admin or rule:readonly",
- "get_dhcp-agents": "rule:admin or rule:readonly",
+ "get_l3-routers": "rule:admin or rule:readonly or rule:global_readonly",
+ "get_dhcp-agents": "rule:admin or rule:readonly or rule:global_readonly",
"get_l3-agents": "rule:admin",
"get_loadbalancer-agent": "rule:admin",
"get_loadbalancer-pools": "rule:admin",
@@ -146,7 +145,7 @@
"create_floatingip:floating_ip_address": "rule:admin",
"update_floatingip": "rule:admin or rule:member",
"delete_floatingip": "rule:admin or rule:member",
- "get_floatingip": "rule:admin or rule:member or rule:readonly",
+ "get_floatingip": "rule:admin or rule:member or rule:readonly or rule:global_readonly",
"create_network_profile": "rule:admin",
"update_network_profile": "rule:admin",
@@ -159,13 +158,13 @@
"create_metering_label": "rule:admin",
"delete_metering_label": "rule:admin",
- "get_metering_label": "rule:admin or rule:readonly",
+ "get_metering_label": "rule:admin or rule:readonly or rule:global_readonly",
"create_metering_label_rule": "rule:admin",
"delete_metering_label_rule": "rule:admin",
- "get_metering_label_rule": "rule:admin or rule:readonly",
+ "get_metering_label_rule": "rule:admin or rule:readonly or rule:global_readonly",
- "get_service_provider": "rule:admin or rule:member or rule:readonly",
+ "get_service_provider": "rule:admin or rule:member or rule:readonly or rule:global_readonly",
"get_lsn": "rule:admin",
"create_lsn": "rule:admin",