From 1fba0bc166af09ac54a1b7b17704511cb5363e09 Mon Sep 17 00:00:00 2001 From: He Jie Xu Date: Wed, 25 May 2016 11:09:18 +0800 Subject: [PATCH] Remove legacy v2 policy rules The legacy v2 API code was removed. The policy rules which are used by legacy v2 API code are useless anymore. This patch cleanup them. Partially implements blueprint remove-legacy-v2-api-code Change-Id: I64648bf97ec483981426086b81b2056928fa1b3e --- etc/nova/policy.json | 242 +----------------- nova/tests/unit/fake_policy.py | 239 +---------------- nova/tests/unit/test_policy.py | 218 +--------------- ..._v2_api_policy_rules-033fa77420ed6362.yaml | 6 + 4 files changed, 10 insertions(+), 695 deletions(-) create mode 100644 releasenotes/notes/remove_legacy_v2_api_policy_rules-033fa77420ed6362.yaml diff --git a/etc/nova/policy.json b/etc/nova/policy.json index 2f63cd90eaf9..54408410eb0c 100644 --- a/etc/nova/policy.json +++ b/etc/nova/policy.json @@ -5,249 +5,9 @@ "cells_scheduler_filter:TargetCellFilter": "is_admin:True", - "compute:create": "rule:admin_or_owner", - "compute:create:attach_network": "rule:admin_or_owner", - "compute:create:attach_volume": "rule:admin_or_owner", - "compute:create:forced_host": "is_admin:True", - - "compute:get": "rule:admin_or_owner", - "compute:get_all": "rule:admin_or_owner", - "compute:get_all_tenants": "is_admin:True", - - "compute:update": "rule:admin_or_owner", - - "compute:get_instance_metadata": "rule:admin_or_owner", - "compute:get_all_instance_metadata": "rule:admin_or_owner", - "compute:get_all_instance_system_metadata": "rule:admin_or_owner", - "compute:update_instance_metadata": "rule:admin_or_owner", - "compute:delete_instance_metadata": "rule:admin_or_owner", - - "compute:get_diagnostics": "rule:admin_or_owner", - "compute:get_instance_diagnostics": "rule:admin_or_owner", - - "compute:start": "rule:admin_or_owner", - "compute:stop": "rule:admin_or_owner", - - "compute:lock": "rule:admin_or_owner", - "compute:unlock": "rule:admin_or_owner", - "compute:unlock_override": "rule:admin_api", - - "compute:get_vnc_console": "rule:admin_or_owner", - "compute:get_spice_console": "rule:admin_or_owner", - "compute:get_rdp_console": "rule:admin_or_owner", - "compute:get_serial_console": "rule:admin_or_owner", - "compute:get_mks_console": "rule:admin_or_owner", - "compute:get_console_output": "rule:admin_or_owner", - - "compute:reset_network": "rule:admin_or_owner", - "compute:inject_network_info": "rule:admin_or_owner", - "compute:add_fixed_ip": "rule:admin_or_owner", - "compute:remove_fixed_ip": "rule:admin_or_owner", - - "compute:attach_volume": "rule:admin_or_owner", - "compute:detach_volume": "rule:admin_or_owner", - "compute:swap_volume": "rule:admin_api", - - "compute:attach_interface": "rule:admin_or_owner", - "compute:detach_interface": "rule:admin_or_owner", - - "compute:set_admin_password": "rule:admin_or_owner", - - "compute:rescue": "rule:admin_or_owner", - "compute:unrescue": "rule:admin_or_owner", - - "compute:suspend": "rule:admin_or_owner", - "compute:resume": "rule:admin_or_owner", - - "compute:pause": "rule:admin_or_owner", - "compute:unpause": "rule:admin_or_owner", - - "compute:shelve": "rule:admin_or_owner", - "compute:shelve_offload": "rule:admin_or_owner", - "compute:unshelve": "rule:admin_or_owner", - - "compute:snapshot": "rule:admin_or_owner", - "compute:snapshot_volume_backed": "rule:admin_or_owner", - "compute:backup": "rule:admin_or_owner", - - "compute:resize": "rule:admin_or_owner", - "compute:confirm_resize": "rule:admin_or_owner", - "compute:revert_resize": "rule:admin_or_owner", - - "compute:rebuild": "rule:admin_or_owner", - "compute:reboot": "rule:admin_or_owner", - "compute:delete": "rule:admin_or_owner", - "compute:soft_delete": "rule:admin_or_owner", - "compute:force_delete": "rule:admin_or_owner", - - "compute:security_groups:add_to_instance": "rule:admin_or_owner", - "compute:security_groups:remove_from_instance": "rule:admin_or_owner", - - "compute:restore": "rule:admin_or_owner", - - "compute:volume_snapshot_create": "rule:admin_or_owner", - "compute:volume_snapshot_delete": "rule:admin_or_owner", - "admin_api": "is_admin:True", - "compute_extension:accounts": "rule:admin_api", - "compute_extension:admin_actions": "rule:admin_api", - "compute_extension:admin_actions:pause": "rule:admin_or_owner", - "compute_extension:admin_actions:unpause": "rule:admin_or_owner", - "compute_extension:admin_actions:suspend": "rule:admin_or_owner", - "compute_extension:admin_actions:resume": "rule:admin_or_owner", - "compute_extension:admin_actions:lock": "rule:admin_or_owner", - "compute_extension:admin_actions:unlock": "rule:admin_or_owner", - "compute_extension:admin_actions:resetNetwork": "rule:admin_api", - "compute_extension:admin_actions:injectNetworkInfo": "rule:admin_api", - "compute_extension:admin_actions:createBackup": "rule:admin_or_owner", - "compute_extension:admin_actions:migrateLive": "rule:admin_api", - "compute_extension:admin_actions:resetState": "rule:admin_api", - "compute_extension:admin_actions:migrate": "rule:admin_api", - "compute_extension:aggregates": "rule:admin_api", - "compute_extension:agents": "rule:admin_api", - "compute_extension:attach_interfaces": "rule:admin_or_owner", - "compute_extension:baremetal_nodes": "rule:admin_api", - "compute_extension:cells": "rule:admin_api", - "compute_extension:cells:create": "rule:admin_api", - "compute_extension:cells:delete": "rule:admin_api", - "compute_extension:cells:update": "rule:admin_api", - "compute_extension:cells:sync_instances": "rule:admin_api", - "compute_extension:certificates": "rule:admin_or_owner", - "compute_extension:cloudpipe": "rule:admin_api", - "compute_extension:cloudpipe_update": "rule:admin_api", - "compute_extension:config_drive": "rule:admin_or_owner", - "compute_extension:console_output": "rule:admin_or_owner", - "compute_extension:consoles": "rule:admin_or_owner", - "compute_extension:createserverext": "rule:admin_or_owner", - "compute_extension:deferred_delete": "rule:admin_or_owner", - "compute_extension:disk_config": "rule:admin_or_owner", - "compute_extension:evacuate": "rule:admin_api", - "compute_extension:extended_server_attributes": "rule:admin_api", - "compute_extension:extended_status": "rule:admin_or_owner", - "compute_extension:extended_availability_zone": "rule:admin_or_owner", - "compute_extension:extended_ips": "rule:admin_or_owner", - "compute_extension:extended_ips_mac": "rule:admin_or_owner", - "compute_extension:extended_vif_net": "rule:admin_or_owner", - "compute_extension:extended_volumes": "rule:admin_or_owner", - "compute_extension:fixed_ips": "rule:admin_api", - "compute_extension:flavor_access": "rule:admin_or_owner", - "compute_extension:flavor_access:addTenantAccess": "rule:admin_api", - "compute_extension:flavor_access:removeTenantAccess": "rule:admin_api", - "compute_extension:flavor_disabled": "rule:admin_or_owner", - "compute_extension:flavor_rxtx": "rule:admin_or_owner", - "compute_extension:flavor_swap": "rule:admin_or_owner", - "compute_extension:flavorextradata": "rule:admin_or_owner", - "compute_extension:flavorextraspecs:index": "rule:admin_or_owner", - "compute_extension:flavorextraspecs:show": "rule:admin_or_owner", - "compute_extension:flavorextraspecs:create": "rule:admin_api", - "compute_extension:flavorextraspecs:update": "rule:admin_api", - "compute_extension:flavorextraspecs:delete": "rule:admin_api", - "compute_extension:flavormanage": "rule:admin_api", - "compute_extension:floating_ip_dns": "rule:admin_or_owner", - "compute_extension:floating_ip_pools": "rule:admin_or_owner", - "compute_extension:floating_ips": "rule:admin_or_owner", - "compute_extension:floating_ips_bulk": "rule:admin_api", - "compute_extension:fping": "rule:admin_or_owner", - "compute_extension:fping:all_tenants": "rule:admin_api", - "compute_extension:hide_server_addresses": "is_admin:False", - "compute_extension:hosts": "rule:admin_api", - "compute_extension:hypervisors": "rule:admin_api", - "compute_extension:image_size": "rule:admin_or_owner", - "compute_extension:instance_actions": "rule:admin_or_owner", - "compute_extension:instance_actions:events": "rule:admin_api", - "compute_extension:instance_usage_audit_log": "rule:admin_api", - "compute_extension:keypairs": "rule:admin_or_owner", - "compute_extension:keypairs:index": "rule:admin_or_owner", - "compute_extension:keypairs:show": "rule:admin_or_owner", - "compute_extension:keypairs:create": "rule:admin_or_owner", - "compute_extension:keypairs:delete": "rule:admin_or_owner", - "compute_extension:multinic": "rule:admin_or_owner", - "compute_extension:networks": "rule:admin_api", - "compute_extension:networks:view": "rule:admin_or_owner", - "compute_extension:networks_associate": "rule:admin_api", - "compute_extension:os-tenant-networks": "rule:admin_or_owner", - "compute_extension:quotas:show": "rule:admin_or_owner", - "compute_extension:quotas:update": "rule:admin_api", - "compute_extension:quotas:delete": "rule:admin_api", - "compute_extension:quota_classes": "rule:admin_or_owner", - "compute_extension:rescue": "rule:admin_or_owner", - "compute_extension:security_group_default_rules": "rule:admin_api", - "compute_extension:security_groups": "rule:admin_or_owner", - "compute_extension:server_diagnostics": "rule:admin_api", - "compute_extension:server_groups": "rule:admin_or_owner", - "compute_extension:server_password": "rule:admin_or_owner", - "compute_extension:server_usage": "rule:admin_or_owner", - "compute_extension:services": "rule:admin_api", - "compute_extension:shelve": "rule:admin_or_owner", - "compute_extension:shelveOffload": "rule:admin_api", - "compute_extension:simple_tenant_usage:show": "rule:admin_or_owner", - "compute_extension:simple_tenant_usage:list": "rule:admin_api", - "compute_extension:unshelve": "rule:admin_or_owner", - "compute_extension:users": "rule:admin_api", - "compute_extension:virtual_interfaces": "rule:admin_or_owner", - "compute_extension:virtual_storage_arrays": "rule:admin_or_owner", - "compute_extension:volumes": "rule:admin_or_owner", - "compute_extension:volume_attachments:index": "rule:admin_or_owner", - "compute_extension:volume_attachments:show": "rule:admin_or_owner", - "compute_extension:volume_attachments:create": "rule:admin_or_owner", - "compute_extension:volume_attachments:update": "rule:admin_api", - "compute_extension:volume_attachments:delete": "rule:admin_or_owner", - "compute_extension:volumetypes": "rule:admin_or_owner", - "compute_extension:availability_zone:list": "rule:admin_or_owner", - "compute_extension:availability_zone:detail": "rule:admin_api", - "compute_extension:used_limits_for_admin": "rule:admin_api", - "compute_extension:migrations:index": "rule:admin_api", - "compute_extension:os-assisted-volume-snapshots:create": "rule:admin_api", - "compute_extension:os-assisted-volume-snapshots:delete": "rule:admin_api", - "compute_extension:console_auth_tokens": "rule:admin_api", - "compute_extension:os-server-external-events:create": "rule:admin_api", - - "network:get_all": "rule:admin_or_owner", - "network:get": "rule:admin_or_owner", - "network:create": "rule:admin_or_owner", - "network:delete": "rule:admin_or_owner", - "network:associate": "rule:admin_or_owner", - "network:disassociate": "rule:admin_or_owner", - "network:get_vifs_by_instance": "rule:admin_or_owner", - "network:allocate_for_instance": "rule:admin_or_owner", - "network:deallocate_for_instance": "rule:admin_or_owner", - "network:validate_networks": "rule:admin_or_owner", - "network:get_instance_uuids_by_ip_filter": "rule:admin_or_owner", - "network:get_instance_id_by_floating_address": "rule:admin_or_owner", - "network:setup_networks_on_host": "rule:admin_or_owner", - "network:get_backdoor_port": "rule:admin_or_owner", - - "network:get_floating_ip": "rule:admin_or_owner", - "network:get_floating_ip_pools": "rule:admin_or_owner", - "network:get_floating_ip_by_address": "rule:admin_or_owner", - "network:get_floating_ips_by_project": "rule:admin_or_owner", - "network:get_floating_ips_by_fixed_address": "rule:admin_or_owner", - "network:allocate_floating_ip": "rule:admin_or_owner", - "network:associate_floating_ip": "rule:admin_or_owner", - "network:disassociate_floating_ip": "rule:admin_or_owner", - "network:release_floating_ip": "rule:admin_or_owner", - "network:migrate_instance_start": "rule:admin_or_owner", - "network:migrate_instance_finish": "rule:admin_or_owner", - - "network:get_fixed_ip": "rule:admin_or_owner", - "network:get_fixed_ip_by_address": "rule:admin_or_owner", - "network:add_fixed_ip_to_instance": "rule:admin_or_owner", - "network:remove_fixed_ip_from_instance": "rule:admin_or_owner", - "network:add_network_to_project": "rule:admin_or_owner", - "network:get_instance_nw_info": "rule:admin_or_owner", - - "network:get_dns_domains": "rule:admin_or_owner", - "network:add_dns_entry": "rule:admin_or_owner", - "network:modify_dns_entry": "rule:admin_or_owner", - "network:delete_dns_entry": "rule:admin_or_owner", - "network:get_dns_entries_by_address": "rule:admin_or_owner", - "network:get_dns_entries_by_name": "rule:admin_or_owner", - "network:create_private_dns_domain": "rule:admin_or_owner", - "network:create_public_dns_domain": "rule:admin_or_owner", - "network:delete_dns_domain": "rule:admin_or_owner", - "network:attach_external_network": "rule:admin_api", - "network:get_vif_by_mac_address": "rule:admin_or_owner", + "network:attach_external_network": "is_admin:True", "os_compute_api:servers:detail:get_all_tenants": "is_admin:True", "os_compute_api:servers:index:get_all_tenants": "is_admin:True", "os_compute_api:servers:confirm_resize": "rule:admin_or_owner", diff --git a/nova/tests/unit/fake_policy.py b/nova/tests/unit/fake_policy.py index c9945e861e21..0cf521fbba1c 100644 --- a/nova/tests/unit/fake_policy.py +++ b/nova/tests/unit/fake_policy.py @@ -20,88 +20,6 @@ policy_data = """ "cells_scheduler_filter:TargetCellFilter": "is_admin:True", "context_is_admin": "role:admin or role:administrator", - "compute:create": "", - "compute:create:attach_network": "", - "compute:create:attach_volume": "", - - "compute:get": "", - "compute:get_all": "", - "compute:get_all_tenants": "", - - "compute:update": "", - - "compute:get_instance_metadata": "", - "compute:get_all_instance_metadata": "", - "compute:get_all_instance_system_metadata": "", - "compute:update_instance_metadata": "", - "compute:delete_instance_metadata": "", - - "compute:get_diagnostics": "", - "compute:get_instance_diagnostics": "", - - "compute:lock": "", - "compute:unlock": "", - "compute:unlock_override": "is_admin:True", - - "compute:get_vnc_console": "", - "compute:get_spice_console": "", - "compute:get_rdp_console": "", - "compute:get_serial_console": "", - "compute:get_mks_console": "", - "compute:get_console_output": "", - - "compute:reset_network": "", - "compute:inject_network_info": "", - "compute:add_fixed_ip": "", - "compute:remove_fixed_ip": "", - - "compute:attach_volume": "", - "compute:detach_volume": "", - - "compute:attach_interface": "", - "compute:detach_interface": "", - - "compute:set_admin_password": "", - - "compute:rescue": "", - "compute:unrescue": "", - - "compute:suspend": "", - "compute:resume": "", - - "compute:pause": "", - "compute:unpause": "", - - "compute:start": "", - "compute:stop": "", - - "compute:resize": "", - "compute:confirm_resize": "", - "compute:revert_resize": "", - - "compute:rebuild": "", - - "compute:reboot": "", - - "compute:snapshot": "", - "compute:snapshot_volume_backed": "", - "compute:backup": "", - - "compute:shelve": "", - "compute:shelve_offload": "", - "compute:unshelve": "", - - "compute:security_groups:add_to_instance": "", - "compute:security_groups:remove_from_instance": "", - - "compute:delete": "", - "compute:soft_delete": "", - "compute:force_delete": "", - "compute:restore": "", - "compute:swap_volume": "", - - "compute:volume_snapshot_create": "", - "compute:volume_snapshot_delete": "", "os_compute_api:servers:confirm_resize": "", "os_compute_api:servers:create": "", @@ -130,24 +48,10 @@ policy_data = """ "os_compute_api:servers:migrations:index": "rule:admin_api", "os_compute_api:servers:migrations:show": "rule:admin_api", "os_compute_api:os-access-ips": "", - "compute_extension:accounts": "", - "compute_extension:admin_actions:pause": "", - "compute_extension:admin_actions:unpause": "", - "compute_extension:admin_actions:suspend": "", - "compute_extension:admin_actions:resume": "", - "compute_extension:admin_actions:lock": "", - "compute_extension:admin_actions:unlock": "", - "compute_extension:admin_actions:resetNetwork": "", - "compute_extension:admin_actions:injectNetworkInfo": "", - "compute_extension:admin_actions:createBackup": "", - "compute_extension:admin_actions:migrateLive": "", - "compute_extension:admin_actions:resetState": "", - "compute_extension:admin_actions:migrate": "", - "os_compute_api:os-admin-actions:reset_network": "", "os_compute_api:os-admin-actions:inject_network_info": "", + "os_compute_api:os-admin-actions:reset_network": "", "os_compute_api:os-admin-actions:reset_state": "", "os_compute_api:os-admin-password": "", - "compute_extension:aggregates": "rule:admin_api", "os_compute_api:os-aggregates:index": "rule:admin_api", "os_compute_api:os-aggregates:create": "rule:admin_api", "os_compute_api:os-aggregates:show": "rule:admin_api", @@ -156,118 +60,61 @@ policy_data = """ "os_compute_api:os-aggregates:add_host": "rule:admin_api", "os_compute_api:os-aggregates:remove_host": "rule:admin_api", "os_compute_api:os-aggregates:set_metadata": "rule:admin_api", - "compute_extension:agents": "", "os_compute_api:os-agents": "", - "compute_extension:attach_interfaces": "", "os_compute_api:os-attach-interfaces": "", - "compute_extension:baremetal_nodes": "", "os_compute_api:os-baremetal-nodes": "", - "compute_extension:cells": "", - "compute_extension:cells:create": "rule:admin_api", - "compute_extension:cells:delete": "rule:admin_api", - "compute_extension:cells:update": "rule:admin_api", - "compute_extension:cells:sync_instances": "rule:admin_api", "os_compute_api:os-cells": "", "os_compute_api:os-cells:create": "rule:admin_api", "os_compute_api:os-cells:delete": "rule:admin_api", "os_compute_api:os-cells:update": "rule:admin_api", "os_compute_api:os-cells:sync_instances": "rule:admin_api", - "compute_extension:certificates": "", "os_compute_api:os-certificates:create": "", "os_compute_api:os-certificates:show": "", - "compute_extension:cloudpipe": "", "os_compute_api:os-cloudpipe": "", - "compute_extension:cloudpipe_update": "", - "compute_extension:config_drive": "", "os_compute_api:os-config-drive": "", - "compute_extension:console_output": "", "os_compute_api:os-console-output": "", - "compute_extension:consoles": "", "os_compute_api:os-remote-consoles": "", "os_compute_api:os-consoles:create": "", "os_compute_api:os-consoles:delete": "", "os_compute_api:os-consoles:index": "", "os_compute_api:os-consoles:show": "", - "compute_extension:createserverext": "", "os_compute_api:os-create-backup": "", - "compute_extension:deferred_delete": "", "os_compute_api:os-deferred-delete": "", - "compute_extension:disk_config": "", "os_compute_api:os-disk-config": "", - "compute_extension:evacuate": "is_admin:True", "os_compute_api:os-evacuate": "is_admin:True", - "compute_extension:extended_server_attributes": "", "os_compute_api:os-extended-server-attributes": "", - "compute_extension:extended_status": "", "os_compute_api:os-extended-status": "", - "compute_extension:extended_availability_zone": "", "os_compute_api:os-extended-availability-zone": "", - "compute_extension:extended_ips": "", - "compute_extension:extended_ips_mac": "", - "compute_extension:extended_vif_net": "", - "compute_extension:extended_volumes": "", "os_compute_api:ips:index": "", "os_compute_api:ips:show": "", "os_compute_api:os-extended-volumes": "", "os_compute_api:extensions": "", - "compute_extension:fixed_ips": "", "os_compute_api:os-fixed-ips": "", - "compute_extension:flavor_access": "", - "compute_extension:flavor_access:addTenantAccess": "", - "compute_extension:flavor_access:removeTenantAccess": "", "os_compute_api:os-flavor-access": "", "os_compute_api:os-flavor-access:remove_tenant_access": "", "os_compute_api:os-flavor-access:add_tenant_access": "", - "compute_extension:flavor_disabled": "", - "compute_extension:flavor_rxtx": "", "os_compute_api:os-flavor-rxtx": "", - "compute_extension:flavor_swap": "", - "compute_extension:flavorextradata": "", - "compute_extension:flavorextraspecs:index": "", - "compute_extension:flavorextraspecs:show": "", - "compute_extension:flavorextraspecs:create": "is_admin:True", - "compute_extension:flavorextraspecs:update": "is_admin:True", - "compute_extension:flavorextraspecs:delete": "is_admin:True", "os_compute_api:os-flavor-extra-specs:index": "", "os_compute_api:os-flavor-extra-specs:show": "", "os_compute_api:os-flavor-extra-specs:create": "is_admin:True", "os_compute_api:os-flavor-extra-specs:update": "is_admin:True", "os_compute_api:os-flavor-extra-specs:delete": "is_admin:True", - "compute_extension:flavormanage": "", "os_compute_api:os-flavor-manage": "", - "compute_extension:floating_ip_dns": "", "os_compute_api:os-floating-ip-dns": "", "os_compute_api:os-floating-ip-dns:domain:update": "", "os_compute_api:os-floating-ip-dns:domain:delete": "", - "compute_extension:floating_ip_pools": "", "os_compute_api:os-floating-ip-pools": "", - "compute_extension:floating_ips": "", "os_compute_api:os-floating-ips": "", - "compute_extension:floating_ips_bulk": "", "os_compute_api:os-floating-ips-bulk": "", - "compute_extension:fping": "", - "compute_extension:fping:all_tenants": "is_admin:True", "os_compute_api:os-fping": "", "os_compute_api:os-fping:all_tenants": "is_admin:True", - "compute_extension:hide_server_addresses": "", "os_compute_api:os-hide-server-addresses": "", - "compute_extension:hosts": "", "os_compute_api:os-hosts": "rule:admin_api", - "compute_extension:hypervisors": "rule:admin_api", "os_compute_api:os-hypervisors": "rule:admin_api", - "compute_extension:image_size": "", "os_compute_api:image-size": "", - "compute_extension:instance_actions": "", "os_compute_api:os-instance-actions": "", - "compute_extension:instance_actions:events": "is_admin:True", "os_compute_api:os-instance-actions:events": "is_admin:True", - "compute_extension:instance_usage_audit_log": "rule:admin_api", "os_compute_api:os-instance-usage-audit-log": "", - "compute_extension:keypairs": "", - "compute_extension:keypairs:index": "", - "compute_extension:keypairs:show": "", - "compute_extension:keypairs:create": "", - "compute_extension:keypairs:delete": "", "os_compute_api:os-keypairs": "", "os_compute_api:os-keypairs:index": @@ -283,15 +130,10 @@ policy_data = """ "os_compute_api:os-lock-server:unlock:unlock_override": "rule:admin_api", "os_compute_api:os-migrate-server:migrate": "", "os_compute_api:os-migrate-server:migrate_live": "", - "compute_extension:multinic": "", "os_compute_api:os-multinic": "", - "compute_extension:networks": "", - "compute_extension:networks:view": "", "os_compute_api:os-networks": "", "os_compute_api:os-networks:view": "", - "compute_extension:networks_associate": "", "os_compute_api:os-networks-associate": "", - "compute_extension:os-tenant-networks": "", "os_compute_api:os-tenant-networks": "", "os_compute_api:os-pause-server:pause": "", "os_compute_api:os-pause-server:unpause": "", @@ -299,27 +141,17 @@ policy_data = """ "os_compute_api:os-pci:index": "", "os_compute_api:os-pci:detail": "", "os_compute_api:os-pci:show": "", - "compute_extension:quotas:show": "", - "compute_extension:quotas:update": "", - "compute_extension:quotas:delete": "", "os_compute_api:os-quota-sets:show": "", "os_compute_api:os-quota-sets:update": "", "os_compute_api:os-quota-sets:delete": "", "os_compute_api:os-quota-sets:detail": "", "os_compute_api:os-quota-sets:defaults": "", - "compute_extension:quota_classes": "", "os_compute_api:os-quota-class-sets:update": "", "os_compute_api:os-quota-class-sets:show": "", - "compute_extension:rescue": "", "os_compute_api:os-rescue": "", - "compute_extension:security_group_default_rules": "", "os_compute_api:os-security-group-default-rules": "", - "compute_extension:security_groups": "", "os_compute_api:os-security-groups": "", - "compute_extension:server_diagnostics": "", "os_compute_api:os-server-diagnostics": "", - "compute_extension:server_groups": "", - "compute_extension:server_password": "", "os_compute_api:os-server-password": "", "os_compute_api:os-server-tags:index": "", "os_compute_api:os-server-tags:show": "", @@ -327,56 +159,31 @@ policy_data = """ "os_compute_api:os-server-tags:update_all": "", "os_compute_api:os-server-tags:delete": "", "os_compute_api:os-server-tags:delete_all": "", - "compute_extension:server_usage": "", "os_compute_api:os-server-usage": "", "os_compute_api:os-server-groups": "", - "compute_extension:services": "", "os_compute_api:os-services": "", - "compute_extension:shelve": "", - "compute_extension:shelveOffload": "", "os_compute_api:os-shelve:shelve": "", "os_compute_api:os-shelve:shelve_offload": "", - "compute_extension:simple_tenant_usage:show": "", - "compute_extension:simple_tenant_usage:list": "", "os_compute_api:os-simple-tenant-usage:show": "", "os_compute_api:os-simple-tenant-usage:list": "", - "compute_extension:unshelve": "", "os_compute_api:os-shelve:unshelve": "", "os_compute_api:os-suspend-server:suspend": "", "os_compute_api:os-suspend-server:resume": "", - "compute_extension:users": "", - "compute_extension:virtual_interfaces": "", "os_compute_api:os-virtual-interfaces": "", - "compute_extension:virtual_storage_arrays": "", - "compute_extension:volumes": "", - "compute_extension:volume_attachments:index": "", - "compute_extension:volume_attachments:show": "", - "compute_extension:volume_attachments:create": "", - "compute_extension:volume_attachments:update": "", - "compute_extension:volume_attachments:delete": "", "os_compute_api:os-volumes": "", "os_compute_api:os-volumes-attachments:index": "", "os_compute_api:os-volumes-attachments:show": "", "os_compute_api:os-volumes-attachments:create": "", "os_compute_api:os-volumes-attachments:update": "", "os_compute_api:os-volumes-attachments:delete": "", - "compute_extension:volumetypes": "", - "compute_extension:availability_zone:list": "", "os_compute_api:os-availability-zone:list": "", - "compute_extension:availability_zone:detail": "", "os_compute_api:os-availability-zone:detail": "", - "compute_extension:used_limits_for_admin": "is_admin:True", "os_compute_api:os-used-limits": "is_admin:True", "os_compute_api:limits": "", - "compute_extension:migrations:index": "is_admin:True", "os_compute_api:os-migrations:index": "is_admin:True", - "compute_extension:os-assisted-volume-snapshots:create": "", - "compute_extension:os-assisted-volume-snapshots:delete": "", "os_compute_api:os-assisted-volume-snapshots:create": "", "os_compute_api:os-assisted-volume-snapshots:delete": "", - "compute_extension:console_auth_tokens": "is_admin:True", "os_compute_api:os-console-auth-tokens": "is_admin:True", - "compute_extension:os-server-external-events:create": "rule:admin_api", "os_compute_api:os-server-external-events:create": "rule:admin_api", "os_compute_api:server-metadata:create": "", "os_compute_api:server-metadata:update": "", @@ -384,50 +191,6 @@ policy_data = """ "os_compute_api:server-metadata:delete": "", "os_compute_api:server-metadata:show": "", "os_compute_api:server-metadata:index": "", - - "network:get_all": "", - "network:get": "", - "network:create": "", - "network:delete": "", - "network:associate": "", - "network:disassociate": "", - "network:get_vifs_by_instance": "", - "network:get_vif_by_mac_address": "", - "network:allocate_for_instance": "", - "network:deallocate_for_instance": "", - "network:validate_networks": "", - "network:get_instance_uuids_by_ip_filter": "", - "network:get_instance_id_by_floating_address": "", - "network:setup_networks_on_host": "", - - "network:get_floating_ip": "", - "network:get_floating_ip_pools": "", - "network:get_floating_ip_by_address": "", - "network:get_floating_ips_by_project": "", - "network:get_floating_ips_by_fixed_address": "", - "network:allocate_floating_ip": "", - "network:associate_floating_ip": "", - "network:disassociate_floating_ip": "", - "network:release_floating_ip": "", - "network:migrate_instance_start": "", - "network:migrate_instance_finish": "", - - "network:get_fixed_ip": "", - "network:get_fixed_ip_by_address": "", - "network:add_fixed_ip_to_instance": "", - "network:remove_fixed_ip_from_instance": "", - "network:add_network_to_project": "", - "network:get_instance_nw_info": "", - - "network:get_dns_domains": "", - "network:add_dns_entry": "", - "network:modify_dns_entry": "", - "network:delete_dns_entry": "", - "network:get_dns_entries_by_address": "", - "network:get_dns_entries_by_name": "", - "network:create_private_dns_domain": "", - "network:create_public_dns_domain": "", - "network:delete_dns_domain": "", "network:attach_external_network": "rule:admin_api" } """ diff --git a/nova/tests/unit/test_policy.py b/nova/tests/unit/test_policy.py index 2c08b53bb0c6..393849d9f906 100644 --- a/nova/tests/unit/test_policy.py +++ b/nova/tests/unit/test_policy.py @@ -247,67 +247,13 @@ class RealRolePolicyTestCase(test.NoDBTestCase): self.admin_only_rules = ( "cells_scheduler_filter:TargetCellFilter", -"compute:unlock_override", -"compute:get_all_tenants", -"compute:create:forced_host", -"compute:swap_volume", -"compute_extension:accounts", -"compute_extension:admin_actions", -"compute_extension:admin_actions:resetNetwork", -"compute_extension:admin_actions:injectNetworkInfo", -"compute_extension:admin_actions:migrateLive", -"compute_extension:admin_actions:resetState", -"compute_extension:admin_actions:migrate", -"compute_extension:aggregates", -"compute_extension:agents", -"compute_extension:baremetal_nodes", -"compute_extension:cells", -"compute_extension:cells:create", -"compute_extension:cells:delete", -"compute_extension:cells:update", -"compute_extension:cells:sync_instances", -"compute_extension:cloudpipe", -"compute_extension:cloudpipe_update", -"compute_extension:evacuate", -"compute_extension:extended_server_attributes", -"compute_extension:fixed_ips", -"compute_extension:flavor_access:addTenantAccess", -"compute_extension:flavor_access:removeTenantAccess", -"compute_extension:flavorextraspecs:create", -"compute_extension:flavorextraspecs:update", -"compute_extension:flavorextraspecs:delete", -"compute_extension:flavormanage", -"compute_extension:floating_ips_bulk", -"compute_extension:fping:all_tenants", -"compute_extension:hosts", -"compute_extension:hypervisors", -"compute_extension:instance_actions:events", -"compute_extension:instance_usage_audit_log", -"compute_extension:networks", -"compute_extension:networks_associate", -"compute_extension:quotas:update", -"compute_extension:quotas:delete", -"compute_extension:security_group_default_rules", -"compute_extension:server_diagnostics", -"compute_extension:services", -"compute_extension:shelveOffload", -"compute_extension:simple_tenant_usage:list", -"compute_extension:users", -"compute_extension:availability_zone:detail", -"compute_extension:used_limits_for_admin", -"compute_extension:migrations:index", -"compute_extension:os-assisted-volume-snapshots:create", -"compute_extension:os-assisted-volume-snapshots:delete", -"compute_extension:console_auth_tokens", -"compute_extension:os-server-external-events:create", -"compute_extension:volume_attachments:update", +"network:attach_external_network", "os_compute_api:servers:create:forced_host", "os_compute_api:servers:detail:get_all_tenants", "os_compute_api:servers:index:get_all_tenants", "os_compute_api:servers:show:host_status", "os_compute_api:servers:migrations:force_complete", "os_compute_api:servers:migrations:delete", -"network:attach_external_network", "os_compute_api:os-admin-actions", "os_compute_api:os-admin-actions:reset_network", "os_compute_api:os-admin-actions:inject_network_info", @@ -376,21 +322,6 @@ class RealRolePolicyTestCase(test.NoDBTestCase): self.admin_or_owner_rules = ( "default", -"compute:start", -"compute:stop", -"compute:delete", -"compute:soft_delete", -"compute:force_delete", -"compute:lock", -"compute:unlock", -"compute_extension:admin_actions:pause", -"compute_extension:admin_actions:unpause", -"compute_extension:admin_actions:suspend", -"compute_extension:admin_actions:resume", -"compute_extension:admin_actions:lock", -"compute_extension:admin_actions:unlock", -"compute_extension:admin_actions:createBackup", -"compute_extension:simple_tenant_usage:show", "os_compute_api:servers:start", "os_compute_api:servers:stop", "os_compute_api:servers:trigger_crash_dump", @@ -416,59 +347,6 @@ class RealRolePolicyTestCase(test.NoDBTestCase): "os_compute_api:os-suspend-server:suspend", "os_compute_api:os-suspend-server:resume", "os_compute_api:os-tenant-networks", -"compute:create", -"compute:create:attach_network", -"compute:create:attach_volume", -"compute:get_all_instance_metadata", -"compute:get_all_instance_system_metadata", -"compute:get_console_output", -"compute:get_diagnostics", -"compute:delete_instance_metadata", -"compute:get", -"compute:get_all", -"compute:shelve", -"compute:shelve_offload", -"compute:snapshot_volume_backed", -"compute:unshelve", -"compute:resize", -"compute:confirm_resize", -"compute:revert_resize", -"compute:rebuild", -"compute:reboot", -"compute:volume_snapshot_create", -"compute:volume_snapshot_delete", -"compute:add_fixed_ip", -"compute:attach_interface", -"compute:detach_interface", -"compute:attach_volume", -"compute:detach_volume", -"compute:backup", -"compute:get_instance_diagnostics", -"compute:get_instance_metadata", -"compute:get_mks_console", -"compute:get_rdp_console", -"compute:get_serial_console", -"compute:get_spice_console", -"compute:get_vnc_console", -"compute:inject_network_info", -"compute:pause", -"compute:remove_fixed_ip", -"compute:rescue", -"compute:reset_network", -"compute:restore", -"compute:resume", -"compute:security_groups:add_to_instance", -"compute:security_groups:remove_from_instance", -"compute:set_admin_password", -"compute:snapshot", -"compute:suspend", -"compute:unpause", -"compute:unrescue", -"compute:update", -"compute:update_instance_metadata", -"compute_extension:config_drive", -"compute_extension:os-tenant-networks", -"network:get_vif_by_mac_address", "os_compute_api:extensions", "os_compute_api:os-config-drive", "os_compute_api:servers:confirm_resize", @@ -485,97 +363,6 @@ class RealRolePolicyTestCase(test.NoDBTestCase): "os_compute_api:servers:revert_resize", "os_compute_api:servers:show", "os_compute_api:servers:update", -"compute_extension:attach_interfaces", -"compute_extension:certificates", -"compute_extension:console_output", -"compute_extension:consoles", -"compute_extension:createserverext", -"compute_extension:deferred_delete", -"compute_extension:disk_config", -"compute_extension:extended_status", -"compute_extension:extended_availability_zone", -"compute_extension:extended_ips", -"compute_extension:extended_ips_mac", -"compute_extension:extended_vif_net", -"compute_extension:extended_volumes", -"compute_extension:flavor_access", -"compute_extension:flavor_disabled", -"compute_extension:flavor_rxtx", -"compute_extension:flavor_swap", -"compute_extension:flavorextradata", -"compute_extension:flavorextraspecs:index", -"compute_extension:flavorextraspecs:show", -"compute_extension:floating_ip_dns", -"compute_extension:floating_ip_pools", -"compute_extension:floating_ips", -"compute_extension:fping", -"compute_extension:image_size", -"compute_extension:instance_actions", -"compute_extension:keypairs", -"compute_extension:keypairs:index", -"compute_extension:keypairs:show", -"compute_extension:keypairs:create", -"compute_extension:keypairs:delete", -"compute_extension:multinic", -"compute_extension:networks:view", -"compute_extension:quotas:show", -"compute_extension:quota_classes", -"compute_extension:rescue", -"compute_extension:security_groups", -"compute_extension:server_groups", -"compute_extension:server_password", -"compute_extension:server_usage", -"compute_extension:shelve", -"compute_extension:unshelve", -"compute_extension:virtual_interfaces", -"compute_extension:virtual_storage_arrays", -"compute_extension:volumes", -"compute_extension:volume_attachments:index", -"compute_extension:volume_attachments:show", -"compute_extension:volume_attachments:create", -"compute_extension:volume_attachments:delete", -"compute_extension:volumetypes", -"compute_extension:availability_zone:list", -"network:get_all", -"network:get", -"network:create", -"network:delete", -"network:associate", -"network:disassociate", -"network:get_vifs_by_instance", -"network:allocate_for_instance", -"network:deallocate_for_instance", -"network:validate_networks", -"network:get_instance_uuids_by_ip_filter", -"network:get_instance_id_by_floating_address", -"network:setup_networks_on_host", -"network:get_backdoor_port", -"network:get_floating_ip", -"network:get_floating_ip_pools", -"network:get_floating_ip_by_address", -"network:get_floating_ips_by_project", -"network:get_floating_ips_by_fixed_address", -"network:allocate_floating_ip", -"network:associate_floating_ip", -"network:disassociate_floating_ip", -"network:release_floating_ip", -"network:migrate_instance_start", -"network:migrate_instance_finish", -"network:get_fixed_ip", -"network:get_fixed_ip_by_address", -"network:add_fixed_ip_to_instance", -"network:remove_fixed_ip_from_instance", -"network:add_network_to_project", -"network:get_instance_nw_info", -"network:get_dns_domains", -"network:add_dns_entry", -"network:modify_dns_entry", -"network:delete_dns_entry", -"network:get_dns_entries_by_address", -"network:get_dns_entries_by_name", -"network:create_private_dns_domain", -"network:create_public_dns_domain", -"network:delete_dns_domain", "os_compute_api:servers:create_image:allow_volume_backed", "os_compute_api:os-access-ips", "os_compute_api:os-admin-password", @@ -626,8 +413,7 @@ class RealRolePolicyTestCase(test.NoDBTestCase): ) self.non_admin_only_rules = ( -"compute_extension:hide_server_addresses", -"os_compute_api:os-hide-server-addresses") +"os_compute_api:os-hide-server-addresses",) self.allow_all_rules = ( "os_compute_api:os-quota-sets:defaults", diff --git a/releasenotes/notes/remove_legacy_v2_api_policy_rules-033fa77420ed6362.yaml b/releasenotes/notes/remove_legacy_v2_api_policy_rules-033fa77420ed6362.yaml new file mode 100644 index 000000000000..5fd2b63ecf38 --- /dev/null +++ b/releasenotes/notes/remove_legacy_v2_api_policy_rules-033fa77420ed6362.yaml @@ -0,0 +1,6 @@ +--- +upgrade: + - Legacy v2 API code is already removed. A set of policy rules in the + policy.json, which are only used by legacy v2 API, are removed. Both v2.1 + API and v2.1 compatiable mode API are using same set of new policy rules + which are with prefix `os_compute_api`.