diff options
author | Thomas Duval <thomas.duval@orange.com> | 2020-06-03 10:06:52 +0200 |
---|---|---|
committer | Thomas Duval <thomas.duval@orange.com> | 2020-06-03 10:06:52 +0200 |
commit | 7bb53c64da2dcf88894bfd31503accdd81498f3d (patch) | |
tree | 4310e12366818af27947b5e2c80cb162da93a4b5 /moon_engine/tests | |
parent | cbea4e360e9bfaa9698cf7c61c83c96a1ba89b8c (diff) |
Update to new version 5.4HEADstable/jermamaster
Signed-off-by: Thomas Duval <thomas.duval@orange.com>
Change-Id: Idcd868133d75928a1ffd74d749ce98503e0555ea
Diffstat (limited to 'moon_engine/tests')
39 files changed, 112897 insertions, 0 deletions
diff --git a/moon_engine/tests/func_policies/moon.yaml b/moon_engine/tests/func_policies/moon.yaml new file mode 100644 index 00000000..128948fa --- /dev/null +++ b/moon_engine/tests/func_policies/moon.yaml @@ -0,0 +1,58 @@ +type: "pipeline" +uuid: +manager_url: "" +incremental_updates: false +api_token: +data: policy_rbac.json +debug: true + +management: + password: admin + url: http://127.0.0.1:8000 + user: admin + token_file: moon_engine_users.json + +orchestration: + driver: moon_engine.plugins.pyorchestrator + connection: local + port: 20000...20100 + config_dir: /tmp + +authorization: + driver: moon_engine.plugins.authz + +plugins: + directory: /tmp + +logging: + version: 1 + + formatters: + brief: + format: "%(levelname)s %(name)s %(message)-30s" + custom: + format: "%(asctime)-15s %(levelname)s %(name)s %(message)s" + + handlers: + console: + class : logging.StreamHandler + formatter: custom + level : INFO + stream : ext://sys.stdout + file: + class : logging.handlers.RotatingFileHandler + formatter: custom + level : DEBUG + filename: /tmp/moon_engine.log + maxBytes: 1048576 + backupCount: 3 + + loggers: + moon: + level: DEBUG + handlers: [console, file] + propagate: no + + root: + level: ERROR + handlers: [console]
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/opst_rbac.json b/moon_engine/tests/func_policies/opst_rbac.json new file mode 100644 index 00000000..6f95db86 --- /dev/null +++ b/moon_engine/tests/func_policies/opst_rbac.json @@ -0,0 +1,59378 @@ +{ + "policies": [ + { + "name": "OpenStack RBAC Policy", + "genre": "authz", + "description": "A RBAC policy similar of what you can find through policy.json files", + "model": { + "name": "OPST_RBAC" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "OPST_RBAC", + "description": "", + "meta_rules": [ + { + "name": "rbac" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "a role in OpenStack" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "the admin role", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "member", + "description": "the member role", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": { + "name": "admin" + }, + "category": { + "name": "role" + }, + "assignments": [ + { + "name": "admin" + }, + { + "name": "member" + } + ] + } + ], + "objects": [ + { + "name": "all_vm", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "the UID of each virtual machine" + } + ], + "object_data": [ + { + "name": "all_vm", + "description": "represents all virtual machines in this project", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": { + "name": "all_vm" + }, + "category": { + "name": "id" + }, + "assignments": [ + { + "name": "all_vm" + } + ] + } + ], + "actions": [ + { + "name": "volume:create", + "description": "volume:create action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete", + "description": "volume:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get", + "description": "volume:get action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_all", + "description": "volume:get_all action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_volume_metadata", + "description": "volume:get_volume_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete_volume_metadata", + "description": "volume:delete_volume_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_volume_metadata", + "description": "volume:update_volume_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_volume_admin_metadata", + "description": "volume:get_volume_admin_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_volume_admin_metadata", + "description": "volume:update_volume_admin_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_snapshot", + "description": "volume:get_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_all_snapshots", + "description": "volume:get_all_snapshots action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:create_snapshot", + "description": "volume:create_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete_snapshot", + "description": "volume:delete_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_snapshot", + "description": "volume:update_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:extend", + "description": "volume:extend action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_readonly_flag", + "description": "volume:update_readonly_flag action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:retype", + "description": "volume:retype action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update", + "description": "volume:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:types_manage", + "description": "volume_extension:types_manage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:types_extra_specs", + "description": "volume_extension:types_extra_specs action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:access_types_qos_specs_id", + "description": "volume_extension:access_types_qos_specs_id action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:access_types_extra_specs", + "description": "volume_extension:access_types_extra_specs action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_access", + "description": "volume_extension:volume_type_access action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_access:addProjectAccess", + "description": "volume_extension:volume_type_access:addProjectAccess action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_access:removeProjectAccess", + "description": "volume_extension:volume_type_access:removeProjectAccess action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_encryption", + "description": "volume_extension:volume_type_encryption action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_encryption_metadata", + "description": "volume_extension:volume_encryption_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:extended_snapshot_attributes", + "description": "volume_extension:extended_snapshot_attributes action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_image_metadata", + "description": "volume_extension:volume_image_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quotas:show", + "description": "volume_extension:quotas:show action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quotas:update", + "description": "volume_extension:quotas:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quotas:delete", + "description": "volume_extension:quotas:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quota_classes", + "description": "volume_extension:quota_classes action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use", + "description": "volume_extension:quota_classes:validate_setup_for_nested_quota_use action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:reset_status", + "description": "volume_extension:volume_admin_actions:reset_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:snapshot_admin_actions:reset_status", + "description": "volume_extension:snapshot_admin_actions:reset_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:backup_admin_actions:reset_status", + "description": "volume_extension:backup_admin_actions:reset_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:force_delete", + "description": "volume_extension:volume_admin_actions:force_delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:force_detach", + "description": "volume_extension:volume_admin_actions:force_detach action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:snapshot_admin_actions:force_delete", + "description": "volume_extension:snapshot_admin_actions:force_delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:backup_admin_actions:force_delete", + "description": "volume_extension:backup_admin_actions:force_delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume", + "description": "volume_extension:volume_admin_actions:migrate_volume action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion", + "description": "volume_extension:volume_admin_actions:migrate_volume_completion action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_host_attribute", + "description": "volume_extension:volume_host_attribute action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_tenant_attribute", + "description": "volume_extension:volume_tenant_attribute action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_mig_status_attribute", + "description": "volume_extension:volume_mig_status_attribute action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:hosts", + "description": "volume_extension:hosts action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:services:index", + "description": "volume_extension:services:index action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:services:update", + "description": "volume_extension:services:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_manage", + "description": "volume_extension:volume_manage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_unmanage", + "description": "volume_extension:volume_unmanage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:capabilities", + "description": "volume_extension:capabilities action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:create_transfer", + "description": "volume:create_transfer action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:accept_transfer", + "description": "volume:accept_transfer action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete_transfer", + "description": "volume:delete_transfer action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_all_transfers", + "description": "volume:get_all_transfers action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:replication:promote", + "description": "volume_extension:replication:promote action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:replication:reenable", + "description": "volume_extension:replication:reenable action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:enable_replication", + "description": "volume:enable_replication action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:disable_replication", + "description": "volume:disable_replication action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:failover_replication", + "description": "volume:failover_replication action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:list_replication_targets", + "description": "volume:list_replication_targets action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:create", + "description": "backup:create action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:delete", + "description": "backup:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:get", + "description": "backup:get action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:get_all", + "description": "backup:get_all action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:restore", + "description": "backup:restore action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:backup-import", + "description": "backup:backup-import action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:backup-export", + "description": "backup:backup-export action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status", + "description": "snapshot_extension:snapshot_actions:update_snapshot_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "snapshot_extension:snapshot_manage", + "description": "snapshot_extension:snapshot_manage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "snapshot_extension:snapshot_unmanage", + "description": "snapshot_extension:snapshot_unmanage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:create", + "description": "consistencygroup:create action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:delete", + "description": "consistencygroup:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:update", + "description": "consistencygroup:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get", + "description": "consistencygroup:get action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get_all", + "description": "consistencygroup:get_all action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:create_cgsnapshot", + "description": "consistencygroup:create_cgsnapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:delete_cgsnapshot", + "description": "consistencygroup:delete_cgsnapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get_cgsnapshot", + "description": "consistencygroup:get_cgsnapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get_all_cgsnapshots", + "description": "consistencygroup:get_all_cgsnapshots action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "scheduler_extension:scheduler_stats:get_pools", + "description": "scheduler_extension:scheduler_stats:get_pools action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "add_image", + "description": "add_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "delete_image", + "description": "delete_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_image", + "description": "get_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_images", + "description": "get_images action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_image", + "description": "modify_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "publicize_image", + "description": "publicize_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "communitize_image", + "description": "communitize_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "copy_from", + "description": "copy_from action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "download_image", + "description": "download_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "upload_image", + "description": "upload_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "delete_image_location", + "description": "delete_image_location action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_image_location", + "description": "get_image_location action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "set_image_location", + "description": "set_image_location action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_member", + "description": "add_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "delete_member", + "description": "delete_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_member", + "description": "get_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_members", + "description": "get_members action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_member", + "description": "modify_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "manage_image_cache", + "description": "manage_image_cache action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_task", + "description": "get_task action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_tasks", + "description": "get_tasks action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_task", + "description": "add_task action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_task", + "description": "modify_task action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "tasks_api_access", + "description": "tasks_api_access action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "deactivate", + "description": "deactivate action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "reactivate", + "description": "reactivate action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_namespace", + "description": "get_metadef_namespace action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_namespaces", + "description": "get_metadef_namespaces action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_namespace", + "description": "modify_metadef_namespace action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_namespace", + "description": "add_metadef_namespace action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_object", + "description": "get_metadef_object action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_objects", + "description": "get_metadef_objects action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_object", + "description": "modify_metadef_object action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_object", + "description": "add_metadef_object action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "list_metadef_resource_types", + "description": "list_metadef_resource_types action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_resource_type", + "description": "get_metadef_resource_type action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_resource_type_association", + "description": "add_metadef_resource_type_association action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_property", + "description": "get_metadef_property action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_properties", + "description": "get_metadef_properties action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_property", + "description": "modify_metadef_property action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_property", + "description": "add_metadef_property action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_tag", + "description": "get_metadef_tag action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_tags", + "description": "get_metadef_tags action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_tag", + "description": "modify_metadef_tag action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_tag", + "description": "add_metadef_tag action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_tags", + "description": "add_metadef_tags action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "identity:get_region", + "description": "identity:get_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_regions", + "description": "identity:list_regions action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_region", + "description": "identity:create_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_region", + "description": "identity:update_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_region", + "description": "identity:delete_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_service", + "description": "identity:get_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_services", + "description": "identity:list_services action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_service", + "description": "identity:create_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_service", + "description": "identity:update_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_service", + "description": "identity:delete_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_endpoint", + "description": "identity:get_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints", + "description": "identity:list_endpoints action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_endpoint", + "description": "identity:create_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_endpoint", + "description": "identity:update_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_endpoint", + "description": "identity:delete_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_registered_limit", + "description": "identity:get_registered_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_registered_limits", + "description": "identity:list_registered_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_registered_limits", + "description": "identity:create_registered_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_registered_limits", + "description": "identity:update_registered_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_registered_limit", + "description": "identity:delete_registered_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_limit", + "description": "identity:get_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_limits", + "description": "identity:list_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_limits", + "description": "identity:create_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_limits", + "description": "identity:update_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_limit", + "description": "identity:delete_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain", + "description": "identity:get_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_domains", + "description": "identity:list_domains action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_domain", + "description": "identity:create_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_domain", + "description": "identity:update_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_domain", + "description": "identity:delete_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_target_project_domain_id", + "description": "admin_and_matching_target_project_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_project_domain_id", + "description": "admin_and_matching_project_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_project", + "description": "identity:get_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects", + "description": "identity:list_projects action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_user_projects", + "description": "identity:list_user_projects action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_project", + "description": "identity:create_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_project", + "description": "identity:update_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_project", + "description": "identity:delete_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_project_tag", + "description": "identity:create_project_tag action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_project_tag", + "description": "identity:delete_project_tag action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_project_tag", + "description": "identity:get_project_tag action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_project_tags", + "description": "identity:list_project_tags action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_project_tags", + "description": "identity:delete_project_tags action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_project_tags", + "description": "identity:update_project_tags action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_target_user_domain_id", + "description": "admin_and_matching_target_user_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_user_domain_id", + "description": "admin_and_matching_user_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_user", + "description": "identity:get_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_users", + "description": "identity:list_users action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_user", + "description": "identity:create_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_user", + "description": "identity:update_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_user", + "description": "identity:delete_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_target_group_domain_id", + "description": "admin_and_matching_target_group_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_group_domain_id", + "description": "admin_and_matching_group_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_group", + "description": "identity:get_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_groups", + "description": "identity:list_groups action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_groups_for_user", + "description": "identity:list_groups_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_group", + "description": "identity:create_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_group", + "description": "identity:update_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_group", + "description": "identity:delete_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_users_in_group", + "description": "identity:list_users_in_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:remove_user_from_group", + "description": "identity:remove_user_from_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_user_in_group", + "description": "identity:check_user_in_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:add_user_to_group", + "description": "identity:add_user_to_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_credential", + "description": "identity:get_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_credentials", + "description": "identity:list_credentials action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_credential", + "description": "identity:create_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_credential", + "description": "identity:update_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_credential", + "description": "identity:delete_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_get_credential", + "description": "identity:ec2_get_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_list_credentials", + "description": "identity:ec2_list_credentials action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_create_credential", + "description": "identity:ec2_create_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_delete_credential", + "description": "identity:ec2_delete_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_role", + "description": "identity:get_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_roles", + "description": "identity:list_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_role", + "description": "identity:create_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_role", + "description": "identity:update_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_role", + "description": "identity:delete_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain_role", + "description": "identity:get_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_domain_roles", + "description": "identity:list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_domain_role", + "description": "identity:create_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_domain_role", + "description": "identity:update_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_domain_role", + "description": "identity:delete_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_matches_domain_role", + "description": "domain_admin_matches_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "get_domain_roles", + "description": "get_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_matches_target_domain_role", + "description": "domain_admin_matches_target_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_matches_target_domain_role", + "description": "project_admin_matches_target_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "list_domain_roles", + "description": "list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_matches_filter_on_list_domain_roles", + "description": "domain_admin_matches_filter_on_list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_matches_filter_on_list_domain_roles", + "description": "project_admin_matches_filter_on_list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_prior_role_domain_id", + "description": "admin_and_matching_prior_role_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "implied_role_matches_prior_role_domain_or_global", + "description": "implied_role_matches_prior_role_domain_or_global action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_implied_role", + "description": "identity:get_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_implied_roles", + "description": "identity:list_implied_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_implied_role", + "description": "identity:create_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_implied_role", + "description": "identity:delete_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_role_inference_rules", + "description": "identity:list_role_inference_rules action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_implied_role", + "description": "identity:check_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_system_grants_for_user", + "description": "identity:list_system_grants_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_system_grant_for_user", + "description": "identity:check_system_grant_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_system_grant_for_user", + "description": "identity:create_system_grant_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_system_grant_for_user", + "description": "identity:revoke_system_grant_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_system_grants_for_group", + "description": "identity:list_system_grants_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_system_grant_for_group", + "description": "identity:check_system_grant_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_system_grant_for_group", + "description": "identity:create_system_grant_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_system_grant_for_group", + "description": "identity:revoke_system_grant_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_grant", + "description": "identity:check_grant action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_grants", + "description": "identity:list_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_grant", + "description": "identity:create_grant action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_grant", + "description": "identity:revoke_grant action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_grants", + "description": "domain_admin_for_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_global_role_grants", + "description": "domain_admin_for_global_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_domain_role_grants", + "description": "domain_admin_for_domain_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_grant_match", + "description": "domain_admin_grant_match action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_grants", + "description": "project_admin_for_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_global_role_grants", + "description": "project_admin_for_global_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_domain_role_grants", + "description": "project_admin_for_domain_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_list_grants", + "description": "domain_admin_for_list_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_list_grants", + "description": "project_admin_for_list_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_on_domain_filter", + "description": "admin_on_domain_filter action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_on_project_filter", + "description": "admin_on_project_filter action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_on_domain_of_project_filter", + "description": "admin_on_domain_of_project_filter action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_role_assignments", + "description": "identity:list_role_assignments action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_role_assignments_for_tree", + "description": "identity:list_role_assignments_for_tree action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_policy", + "description": "identity:get_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_policies", + "description": "identity:list_policies action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy", + "description": "identity:create_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_policy", + "description": "identity:update_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy", + "description": "identity:delete_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_token", + "description": "identity:check_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:validate_token", + "description": "identity:validate_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:validate_token_head", + "description": "identity:validate_token_head action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revocation_list", + "description": "identity:revocation_list action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_token", + "description": "identity:revoke_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_trust", + "description": "identity:create_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_trusts", + "description": "identity:list_trusts action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_roles_for_trust", + "description": "identity:list_roles_for_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_role_for_trust", + "description": "identity:get_role_for_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_trust", + "description": "identity:delete_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_trust", + "description": "identity:get_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_consumer", + "description": "identity:create_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_consumer", + "description": "identity:get_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_consumers", + "description": "identity:list_consumers action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_consumer", + "description": "identity:delete_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_consumer", + "description": "identity:update_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:authorize_request_token", + "description": "identity:authorize_request_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_access_token_roles", + "description": "identity:list_access_token_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_access_token_role", + "description": "identity:get_access_token_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_access_tokens", + "description": "identity:list_access_tokens action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_access_token", + "description": "identity:get_access_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_access_token", + "description": "identity:delete_access_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects_for_endpoint", + "description": "identity:list_projects_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:add_endpoint_to_project", + "description": "identity:add_endpoint_to_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_endpoint_in_project", + "description": "identity:check_endpoint_in_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints_for_project", + "description": "identity:list_endpoints_for_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:remove_endpoint_from_project", + "description": "identity:remove_endpoint_from_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_endpoint_group", + "description": "identity:create_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoint_groups", + "description": "identity:list_endpoint_groups action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_endpoint_group", + "description": "identity:get_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_endpoint_group", + "description": "identity:update_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_endpoint_group", + "description": "identity:delete_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects_associated_with_endpoint_group", + "description": "identity:list_projects_associated_with_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints_associated_with_endpoint_group", + "description": "identity:list_endpoints_associated_with_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_endpoint_group_in_project", + "description": "identity:get_endpoint_group_in_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoint_groups_for_project", + "description": "identity:list_endpoint_groups_for_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:add_endpoint_group_to_project", + "description": "identity:add_endpoint_group_to_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:remove_endpoint_group_from_project", + "description": "identity:remove_endpoint_group_from_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_identity_provider", + "description": "identity:create_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_identity_providers", + "description": "identity:list_identity_providers action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_identity_provider", + "description": "identity:get_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_identity_provider", + "description": "identity:update_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_identity_provider", + "description": "identity:delete_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_protocol", + "description": "identity:create_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_protocol", + "description": "identity:update_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_protocol", + "description": "identity:get_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_protocols", + "description": "identity:list_protocols action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_protocol", + "description": "identity:delete_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_mapping", + "description": "identity:create_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_mapping", + "description": "identity:get_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_mappings", + "description": "identity:list_mappings action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_mapping", + "description": "identity:delete_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_mapping", + "description": "identity:update_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_service_provider", + "description": "identity:create_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_service_providers", + "description": "identity:list_service_providers action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_service_provider", + "description": "identity:get_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_service_provider", + "description": "identity:update_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_service_provider", + "description": "identity:delete_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_catalog", + "description": "identity:get_auth_catalog action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_projects", + "description": "identity:get_auth_projects action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_domains", + "description": "identity:get_auth_domains action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_system", + "description": "identity:get_auth_system action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects_for_user", + "description": "identity:list_projects_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_domains_for_user", + "description": "identity:list_domains_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_revoke_events", + "description": "identity:list_revoke_events action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy_association_for_endpoint", + "description": "identity:create_policy_association_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_policy_association_for_endpoint", + "description": "identity:check_policy_association_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy_association_for_endpoint", + "description": "identity:delete_policy_association_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy_association_for_service", + "description": "identity:create_policy_association_for_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_policy_association_for_service", + "description": "identity:check_policy_association_for_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy_association_for_service", + "description": "identity:delete_policy_association_for_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy_association_for_region_and_service", + "description": "identity:create_policy_association_for_region_and_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_policy_association_for_region_and_service", + "description": "identity:check_policy_association_for_region_and_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy_association_for_region_and_service", + "description": "identity:delete_policy_association_for_region_and_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_policy_for_endpoint", + "description": "identity:get_policy_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints_for_policy", + "description": "identity:list_endpoints_for_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_domain_config", + "description": "identity:create_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain_config", + "description": "identity:get_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_security_compliance_domain_config", + "description": "identity:get_security_compliance_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_domain_config", + "description": "identity:update_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_domain_config", + "description": "identity:delete_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain_config_default", + "description": "identity:get_domain_config_default action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_application_credential", + "description": "identity:get_application_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_application_credentials", + "description": "identity:list_application_credentials action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_application_credential", + "description": "identity:create_application_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_application_credential", + "description": "identity:delete_application_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "create_subnet", + "description": "create_subnet action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_subnet:segment_id", + "description": "create_subnet:segment_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_subnet:service_types", + "description": "create_subnet:service_types action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_subnet", + "description": "get_subnet action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_subnet:segment_id", + "description": "get_subnet:segment_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_subnet", + "description": "update_subnet action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_subnet:service_types", + "description": "update_subnet:service_types action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_subnet", + "description": "delete_subnet action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_subnetpool", + "description": "create_subnetpool action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_subnetpool:shared", + "description": "create_subnetpool:shared action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_subnetpool:is_default", + "description": "create_subnetpool:is_default action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_subnetpool", + "description": "get_subnetpool action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_subnetpool", + "description": "update_subnetpool action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_subnetpool:is_default", + "description": "update_subnetpool:is_default action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_subnetpool", + "description": "delete_subnetpool action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_address_scope", + "description": "create_address_scope action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_address_scope:shared", + "description": "create_address_scope:shared action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_address_scope", + "description": "get_address_scope action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_address_scope", + "description": "update_address_scope action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_address_scope:shared", + "description": "update_address_scope:shared action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_address_scope", + "description": "delete_address_scope action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network", + "description": "create_network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network", + "description": "get_network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network:router:external", + "description": "get_network:router:external action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network:segments", + "description": "get_network:segments action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network:provider:network_type", + "description": "get_network:provider:network_type action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network:provider:physical_network", + "description": "get_network:provider:physical_network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network:provider:segmentation_id", + "description": "get_network:provider:segmentation_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network:queue_id", + "description": "get_network:queue_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network_ip_availabilities", + "description": "get_network_ip_availabilities action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network_ip_availability", + "description": "get_network_ip_availability action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network:shared", + "description": "create_network:shared action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network:router:external", + "description": "create_network:router:external action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network:is_default", + "description": "create_network:is_default action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network:segments", + "description": "create_network:segments action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network:provider:network_type", + "description": "create_network:provider:network_type action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network:provider:physical_network", + "description": "create_network:provider:physical_network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network:provider:segmentation_id", + "description": "create_network:provider:segmentation_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network", + "description": "update_network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network:segments", + "description": "update_network:segments action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network:shared", + "description": "update_network:shared action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network:provider:network_type", + "description": "update_network:provider:network_type action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network:provider:physical_network", + "description": "update_network:provider:physical_network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network:provider:segmentation_id", + "description": "update_network:provider:segmentation_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network:router:external", + "description": "update_network:router:external action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_network", + "description": "delete_network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_segment", + "description": "create_segment action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_segment", + "description": "get_segment action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_segment", + "description": "update_segment action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_segment", + "description": "delete_segment action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "network_device", + "description": "network_device action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port", + "description": "create_port action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:device_owner", + "description": "create_port:device_owner action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:mac_address", + "description": "create_port:mac_address action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:fixed_ips:ip_address", + "description": "create_port:fixed_ips:ip_address action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:fixed_ips:subnet_id", + "description": "create_port:fixed_ips:subnet_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:port_security_enabled", + "description": "create_port:port_security_enabled action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:binding:host_id", + "description": "create_port:binding:host_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:binding:profile", + "description": "create_port:binding:profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:mac_learning_enabled", + "description": "create_port:mac_learning_enabled action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_port:allowed_address_pairs", + "description": "create_port:allowed_address_pairs action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_port", + "description": "get_port action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_port:queue_id", + "description": "get_port:queue_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_port:binding:vif_type", + "description": "get_port:binding:vif_type action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_port:binding:vif_details", + "description": "get_port:binding:vif_details action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_port:binding:host_id", + "description": "get_port:binding:host_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_port:binding:profile", + "description": "get_port:binding:profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port", + "description": "update_port action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:device_owner", + "description": "update_port:device_owner action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:mac_address", + "description": "update_port:mac_address action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:fixed_ips:ip_address", + "description": "update_port:fixed_ips:ip_address action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:fixed_ips:subnet_id", + "description": "update_port:fixed_ips:subnet_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:port_security_enabled", + "description": "update_port:port_security_enabled action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:binding:host_id", + "description": "update_port:binding:host_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:binding:profile", + "description": "update_port:binding:profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:mac_learning_enabled", + "description": "update_port:mac_learning_enabled action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:allowed_address_pairs", + "description": "update_port:allowed_address_pairs action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_port:data_plane_status", + "description": "update_port:data_plane_status action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_port", + "description": "delete_port action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_router:ha", + "description": "get_router:ha action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_router", + "description": "create_router action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_router:external_gateway_info:enable_snat", + "description": "create_router:external_gateway_info:enable_snat action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_router:distributed", + "description": "create_router:distributed action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_router:ha", + "description": "create_router:ha action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_router", + "description": "get_router action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_router:distributed", + "description": "get_router:distributed action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_router", + "description": "update_router action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_router:external_gateway_info", + "description": "update_router:external_gateway_info action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_router:external_gateway_info:network_id", + "description": "update_router:external_gateway_info:network_id action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_router:external_gateway_info:enable_snat", + "description": "update_router:external_gateway_info:enable_snat action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_router:distributed", + "description": "update_router:distributed action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_router:ha", + "description": "update_router:ha action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_router", + "description": "delete_router action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "add_router_interface", + "description": "add_router_interface action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "remove_router_interface", + "description": "remove_router_interface action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_router:external_gateway_info:external_fixed_ips", + "description": "create_router:external_gateway_info:external_fixed_ips action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_router:external_gateway_info:external_fixed_ips", + "description": "update_router:external_gateway_info:external_fixed_ips action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_qos_queue", + "description": "create_qos_queue action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_qos_queue", + "description": "get_qos_queue action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_agent", + "description": "update_agent action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_agent", + "description": "delete_agent action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_agent", + "description": "get_agent action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_dhcp-network", + "description": "create_dhcp-network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_dhcp-network", + "description": "delete_dhcp-network action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_dhcp-networks", + "description": "get_dhcp-networks action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_l3-router", + "description": "create_l3-router action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_l3-router", + "description": "delete_l3-router action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_l3-routers", + "description": "get_l3-routers action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_dhcp-agents", + "description": "get_dhcp-agents action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_l3-agents", + "description": "get_l3-agents action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_loadbalancer-agent", + "description": "get_loadbalancer-agent action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_loadbalancer-pools", + "description": "get_loadbalancer-pools action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_agent-loadbalancers", + "description": "get_agent-loadbalancers action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_loadbalancer-hosting-agent", + "description": "get_loadbalancer-hosting-agent action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_floatingip", + "description": "create_floatingip action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_floatingip:floating_ip_address", + "description": "create_floatingip:floating_ip_address action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_floatingip", + "description": "update_floatingip action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_floatingip", + "description": "delete_floatingip action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_floatingip", + "description": "get_floatingip action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_network_profile", + "description": "create_network_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_network_profile", + "description": "update_network_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_network_profile", + "description": "delete_network_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network_profiles", + "description": "get_network_profiles action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_network_profile", + "description": "get_network_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_policy_profiles", + "description": "update_policy_profiles action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_policy_profiles", + "description": "get_policy_profiles action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_policy_profile", + "description": "get_policy_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_metering_label", + "description": "create_metering_label action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_metering_label", + "description": "delete_metering_label action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_metering_label", + "description": "get_metering_label action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_metering_label_rule", + "description": "create_metering_label_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_metering_label_rule", + "description": "delete_metering_label_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_metering_label_rule", + "description": "get_metering_label_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_service_provider", + "description": "get_service_provider action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_lsn", + "description": "get_lsn action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_lsn", + "description": "create_lsn action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_flavor", + "description": "create_flavor action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_flavor", + "description": "update_flavor action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_flavor", + "description": "delete_flavor action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_flavors", + "description": "get_flavors action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_flavor", + "description": "get_flavor action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_service_profile", + "description": "create_service_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_service_profile", + "description": "update_service_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_service_profile", + "description": "delete_service_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_service_profiles", + "description": "get_service_profiles action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_service_profile", + "description": "get_service_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_policy", + "description": "get_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_policy", + "description": "create_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_policy", + "description": "update_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_policy", + "description": "delete_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_policy_bandwidth_limit_rule", + "description": "get_policy_bandwidth_limit_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_policy_bandwidth_limit_rule", + "description": "create_policy_bandwidth_limit_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_policy_bandwidth_limit_rule", + "description": "delete_policy_bandwidth_limit_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_policy_bandwidth_limit_rule", + "description": "update_policy_bandwidth_limit_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_policy_dscp_marking_rule", + "description": "get_policy_dscp_marking_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_policy_dscp_marking_rule", + "description": "create_policy_dscp_marking_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_policy_dscp_marking_rule", + "description": "delete_policy_dscp_marking_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_policy_dscp_marking_rule", + "description": "update_policy_dscp_marking_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_rule_type", + "description": "get_rule_type action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_policy_minimum_bandwidth_rule", + "description": "get_policy_minimum_bandwidth_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_policy_minimum_bandwidth_rule", + "description": "create_policy_minimum_bandwidth_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_policy_minimum_bandwidth_rule", + "description": "delete_policy_minimum_bandwidth_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_policy_minimum_bandwidth_rule", + "description": "update_policy_minimum_bandwidth_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "restrict_wildcard", + "description": "restrict_wildcard action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_rbac_policy", + "description": "create_rbac_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_rbac_policy:target_tenant", + "description": "create_rbac_policy:target_tenant action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_rbac_policy", + "description": "update_rbac_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_rbac_policy:target_tenant", + "description": "update_rbac_policy:target_tenant action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_rbac_policy", + "description": "get_rbac_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_rbac_policy", + "description": "delete_rbac_policy action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_flavor_service_profile", + "description": "create_flavor_service_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_flavor_service_profile", + "description": "delete_flavor_service_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_flavor_service_profile", + "description": "get_flavor_service_profile action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_auto_allocated_topology", + "description": "get_auto_allocated_topology action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_trunk", + "description": "create_trunk action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_trunk", + "description": "get_trunk action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_trunk", + "description": "delete_trunk action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_subports", + "description": "get_subports action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "add_subports", + "description": "add_subports action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "remove_subports", + "description": "remove_subports action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_security_groups", + "description": "get_security_groups action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_security_group", + "description": "get_security_group action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_security_group", + "description": "create_security_group action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_security_group", + "description": "update_security_group action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_security_group", + "description": "delete_security_group action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_security_group_rules", + "description": "get_security_group_rules action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_security_group_rule", + "description": "get_security_group_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_security_group_rule", + "description": "create_security_group_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_security_group_rule", + "description": "delete_security_group_rule action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_loggable_resources", + "description": "get_loggable_resources action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "create_log", + "description": "create_log action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "update_log", + "description": "update_log action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "delete_log", + "description": "delete_log action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_logs", + "description": "get_logs action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "get_log", + "description": "get_log action for neutron", + "extra": { + "component": "neutron" + }, + "policies": [] + }, + { + "name": "cells_scheduler_filter:TargetCellFilter", + "description": "cells_scheduler_filter:TargetCellFilter action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create", + "description": "compute:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create:attach_network", + "description": "compute:create:attach_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create:attach_volume", + "description": "compute:create:attach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create:forced_host", + "description": "compute:create:forced_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get", + "description": "compute:get action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all", + "description": "compute:get_all action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all_tenants", + "description": "compute:get_all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:update", + "description": "compute:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_instance_metadata", + "description": "compute:get_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all_instance_metadata", + "description": "compute:get_all_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all_instance_system_metadata", + "description": "compute:get_all_instance_system_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:update_instance_metadata", + "description": "compute:update_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:delete_instance_metadata", + "description": "compute:delete_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_instance_faults", + "description": "compute:get_instance_faults action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_diagnostics", + "description": "compute:get_diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_instance_diagnostics", + "description": "compute:get_instance_diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:start", + "description": "compute:start action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:stop", + "description": "compute:stop action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_lock", + "description": "compute:get_lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:lock", + "description": "compute:lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unlock", + "description": "compute:unlock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unlock_override", + "description": "compute:unlock_override action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_vnc_console", + "description": "compute:get_vnc_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_spice_console", + "description": "compute:get_spice_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_rdp_console", + "description": "compute:get_rdp_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_serial_console", + "description": "compute:get_serial_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_mks_console", + "description": "compute:get_mks_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_console_output", + "description": "compute:get_console_output action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:reset_network", + "description": "compute:reset_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:inject_network_info", + "description": "compute:inject_network_info action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:add_fixed_ip", + "description": "compute:add_fixed_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:remove_fixed_ip", + "description": "compute:remove_fixed_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:attach_volume", + "description": "compute:attach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:detach_volume", + "description": "compute:detach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:swap_volume", + "description": "compute:swap_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:attach_interface", + "description": "compute:attach_interface action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:detach_interface", + "description": "compute:detach_interface action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:set_admin_password", + "description": "compute:set_admin_password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:rescue", + "description": "compute:rescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unrescue", + "description": "compute:unrescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:suspend", + "description": "compute:suspend action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:resume", + "description": "compute:resume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:pause", + "description": "compute:pause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unpause", + "description": "compute:unpause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:shelve", + "description": "compute:shelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:shelve_offload", + "description": "compute:shelve_offload action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unshelve", + "description": "compute:unshelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:snapshot", + "description": "compute:snapshot action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:snapshot_volume_backed", + "description": "compute:snapshot_volume_backed action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:backup", + "description": "compute:backup action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:resize", + "description": "compute:resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:confirm_resize", + "description": "compute:confirm_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:revert_resize", + "description": "compute:revert_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:rebuild", + "description": "compute:rebuild action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:reboot", + "description": "compute:reboot action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:delete", + "description": "compute:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:soft_delete", + "description": "compute:soft_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:force_delete", + "description": "compute:force_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:security_groups:add_to_instance", + "description": "compute:security_groups:add_to_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:security_groups:remove_from_instance", + "description": "compute:security_groups:remove_from_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:restore", + "description": "compute:restore action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:volume_snapshot_create", + "description": "compute:volume_snapshot_create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:volume_snapshot_delete", + "description": "compute:volume_snapshot_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:accounts", + "description": "compute_extension:accounts action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions", + "description": "compute_extension:admin_actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:pause", + "description": "compute_extension:admin_actions:pause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:unpause", + "description": "compute_extension:admin_actions:unpause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:suspend", + "description": "compute_extension:admin_actions:suspend action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:resume", + "description": "compute_extension:admin_actions:resume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:lock", + "description": "compute_extension:admin_actions:lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:unlock", + "description": "compute_extension:admin_actions:unlock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:resetNetwork", + "description": "compute_extension:admin_actions:resetNetwork action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:injectNetworkInfo", + "description": "compute_extension:admin_actions:injectNetworkInfo action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:createBackup", + "description": "compute_extension:admin_actions:createBackup action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:migrateLive", + "description": "compute_extension:admin_actions:migrateLive action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:resetState", + "description": "compute_extension:admin_actions:resetState action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:migrate", + "description": "compute_extension:admin_actions:migrate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:aggregates", + "description": "compute_extension:aggregates action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:agents", + "description": "compute_extension:agents action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:attach_interfaces", + "description": "compute_extension:attach_interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:baremetal_nodes", + "description": "compute_extension:baremetal_nodes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells", + "description": "compute_extension:cells action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:create", + "description": "compute_extension:cells:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:delete", + "description": "compute_extension:cells:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:update", + "description": "compute_extension:cells:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:sync_instances", + "description": "compute_extension:cells:sync_instances action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:certificates", + "description": "compute_extension:certificates action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cloudpipe", + "description": "compute_extension:cloudpipe action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cloudpipe_update", + "description": "compute_extension:cloudpipe_update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:config_drive", + "description": "compute_extension:config_drive action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:console_output", + "description": "compute_extension:console_output action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:consoles", + "description": "compute_extension:consoles action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:createserverext", + "description": "compute_extension:createserverext action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:deferred_delete", + "description": "compute_extension:deferred_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:disk_config", + "description": "compute_extension:disk_config action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:evacuate", + "description": "compute_extension:evacuate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_server_attributes", + "description": "compute_extension:extended_server_attributes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_status", + "description": "compute_extension:extended_status action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_availability_zone", + "description": "compute_extension:extended_availability_zone action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_ips", + "description": "compute_extension:extended_ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_ips_mac", + "description": "compute_extension:extended_ips_mac action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_vif_net", + "description": "compute_extension:extended_vif_net action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_volumes", + "description": "compute_extension:extended_volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:fixed_ips", + "description": "compute_extension:fixed_ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_access", + "description": "compute_extension:flavor_access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_access:addTenantAccess", + "description": "compute_extension:flavor_access:addTenantAccess action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_access:removeTenantAccess", + "description": "compute_extension:flavor_access:removeTenantAccess action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_disabled", + "description": "compute_extension:flavor_disabled action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_rxtx", + "description": "compute_extension:flavor_rxtx action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_swap", + "description": "compute_extension:flavor_swap action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextradata", + "description": "compute_extension:flavorextradata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:index", + "description": "compute_extension:flavorextraspecs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:show", + "description": "compute_extension:flavorextraspecs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:create", + "description": "compute_extension:flavorextraspecs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:update", + "description": "compute_extension:flavorextraspecs:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:delete", + "description": "compute_extension:flavorextraspecs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavormanage", + "description": "compute_extension:flavormanage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ip_dns", + "description": "compute_extension:floating_ip_dns action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ip_pools", + "description": "compute_extension:floating_ip_pools action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ips", + "description": "compute_extension:floating_ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ips_bulk", + "description": "compute_extension:floating_ips_bulk action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:fping", + "description": "compute_extension:fping action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:fping:all_tenants", + "description": "compute_extension:fping:all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:hide_server_addresses", + "description": "compute_extension:hide_server_addresses action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:hosts", + "description": "compute_extension:hosts action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:hypervisors", + "description": "compute_extension:hypervisors action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:image_size", + "description": "compute_extension:image_size action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:instance_actions", + "description": "compute_extension:instance_actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:instance_actions:events", + "description": "compute_extension:instance_actions:events action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:instance_usage_audit_log", + "description": "compute_extension:instance_usage_audit_log action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs", + "description": "compute_extension:keypairs action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:index", + "description": "compute_extension:keypairs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:show", + "description": "compute_extension:keypairs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:create", + "description": "compute_extension:keypairs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:delete", + "description": "compute_extension:keypairs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:multinic", + "description": "compute_extension:multinic action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:networks", + "description": "compute_extension:networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:networks:view", + "description": "compute_extension:networks:view action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:networks_associate", + "description": "compute_extension:networks_associate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-tenant-networks", + "description": "compute_extension:os-tenant-networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quotas:show", + "description": "compute_extension:quotas:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quotas:update", + "description": "compute_extension:quotas:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quotas:delete", + "description": "compute_extension:quotas:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quota_classes", + "description": "compute_extension:quota_classes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:rescue", + "description": "compute_extension:rescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:security_group_default_rules", + "description": "compute_extension:security_group_default_rules action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:security_groups", + "description": "compute_extension:security_groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_diagnostics", + "description": "compute_extension:server_diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_groups", + "description": "compute_extension:server_groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_password", + "description": "compute_extension:server_password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_usage", + "description": "compute_extension:server_usage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:services", + "description": "compute_extension:services action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:shelve", + "description": "compute_extension:shelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:shelveOffload", + "description": "compute_extension:shelveOffload action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:simple_tenant_usage:show", + "description": "compute_extension:simple_tenant_usage:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:simple_tenant_usage:list", + "description": "compute_extension:simple_tenant_usage:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:unshelve", + "description": "compute_extension:unshelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:users", + "description": "compute_extension:users action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:virtual_interfaces", + "description": "compute_extension:virtual_interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:virtual_storage_arrays", + "description": "compute_extension:virtual_storage_arrays action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volumes", + "description": "compute_extension:volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:index", + "description": "compute_extension:volume_attachments:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:show", + "description": "compute_extension:volume_attachments:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:create", + "description": "compute_extension:volume_attachments:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:update", + "description": "compute_extension:volume_attachments:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:delete", + "description": "compute_extension:volume_attachments:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volumetypes", + "description": "compute_extension:volumetypes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:availability_zone:list", + "description": "compute_extension:availability_zone:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:availability_zone:detail", + "description": "compute_extension:availability_zone:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:used_limits_for_admin", + "description": "compute_extension:used_limits_for_admin action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:migrations:index", + "description": "compute_extension:migrations:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:create", + "description": "compute_extension:os-assisted-volume-snapshots:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:delete", + "description": "compute_extension:os-assisted-volume-snapshots:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:console_auth_tokens", + "description": "compute_extension:console_auth_tokens action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-server-external-events:create", + "description": "compute_extension:os-server-external-events:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_all", + "description": "network:get_all action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get", + "description": "network:get action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:create", + "description": "network:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:delete", + "description": "network:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:associate", + "description": "network:associate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:disassociate", + "description": "network:disassociate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_vifs_by_instance", + "description": "network:get_vifs_by_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:allocate_for_instance", + "description": "network:allocate_for_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:deallocate_for_instance", + "description": "network:deallocate_for_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:validate_networks", + "description": "network:validate_networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_instance_uuids_by_ip_filter", + "description": "network:get_instance_uuids_by_ip_filter action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_instance_id_by_floating_address", + "description": "network:get_instance_id_by_floating_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:setup_networks_on_host", + "description": "network:setup_networks_on_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_backdoor_port", + "description": "network:get_backdoor_port action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ip", + "description": "network:get_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ip_pools", + "description": "network:get_floating_ip_pools action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ip_by_address", + "description": "network:get_floating_ip_by_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ips_by_project", + "description": "network:get_floating_ips_by_project action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ips_by_fixed_address", + "description": "network:get_floating_ips_by_fixed_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:allocate_floating_ip", + "description": "network:allocate_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:associate_floating_ip", + "description": "network:associate_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:disassociate_floating_ip", + "description": "network:disassociate_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:release_floating_ip", + "description": "network:release_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:migrate_instance_start", + "description": "network:migrate_instance_start action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:migrate_instance_finish", + "description": "network:migrate_instance_finish action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_fixed_ip", + "description": "network:get_fixed_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_fixed_ip_by_address", + "description": "network:get_fixed_ip_by_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:add_fixed_ip_to_instance", + "description": "network:add_fixed_ip_to_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:remove_fixed_ip_from_instance", + "description": "network:remove_fixed_ip_from_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:add_network_to_project", + "description": "network:add_network_to_project action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_instance_nw_info", + "description": "network:get_instance_nw_info action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_dns_domains", + "description": "network:get_dns_domains action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:add_dns_entry", + "description": "network:add_dns_entry action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:modify_dns_entry", + "description": "network:modify_dns_entry action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:delete_dns_entry", + "description": "network:delete_dns_entry action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_dns_entries_by_address", + "description": "network:get_dns_entries_by_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_dns_entries_by_name", + "description": "network:get_dns_entries_by_name action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:create_private_dns_domain", + "description": "network:create_private_dns_domain action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:create_public_dns_domain", + "description": "network:create_public_dns_domain action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:delete_dns_domain", + "description": "network:delete_dns_domain action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:attach_external_network", + "description": "network:attach_external_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_vif_by_mac_address", + "description": "network:get_vif_by_mac_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:detail:get_all_tenants", + "description": "os_compute_api:servers:detail:get_all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:index:get_all_tenants", + "description": "os_compute_api:servers:index:get_all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:confirm_resize", + "description": "os_compute_api:servers:confirm_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create", + "description": "os_compute_api:servers:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create:attach_network", + "description": "os_compute_api:servers:create:attach_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create:attach_volume", + "description": "os_compute_api:servers:create:attach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create:forced_host", + "description": "os_compute_api:servers:create:forced_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:delete", + "description": "os_compute_api:servers:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:update", + "description": "os_compute_api:servers:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:detail", + "description": "os_compute_api:servers:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:index", + "description": "os_compute_api:servers:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:reboot", + "description": "os_compute_api:servers:reboot action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:rebuild", + "description": "os_compute_api:servers:rebuild action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:resize", + "description": "os_compute_api:servers:resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:revert_resize", + "description": "os_compute_api:servers:revert_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:show", + "description": "os_compute_api:servers:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create_image", + "description": "os_compute_api:servers:create_image action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create_image:allow_volume_backed", + "description": "os_compute_api:servers:create_image:allow_volume_backed action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:start", + "description": "os_compute_api:servers:start action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:stop", + "description": "os_compute_api:servers:stop action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-access-ips:discoverable", + "description": "os_compute_api:os-access-ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-access-ips", + "description": "os_compute_api:os-access-ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions", + "description": "os_compute_api:os-admin-actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:discoverable", + "description": "os_compute_api:os-admin-actions:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:reset_network", + "description": "os_compute_api:os-admin-actions:reset_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:inject_network_info", + "description": "os_compute_api:os-admin-actions:inject_network_info action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:reset_state", + "description": "os_compute_api:os-admin-actions:reset_state action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-password", + "description": "os_compute_api:os-admin-password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-password:discoverable", + "description": "os_compute_api:os-admin-password:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:discoverable", + "description": "os_compute_api:os-aggregates:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:index", + "description": "os_compute_api:os-aggregates:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:create", + "description": "os_compute_api:os-aggregates:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:show", + "description": "os_compute_api:os-aggregates:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:update", + "description": "os_compute_api:os-aggregates:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:delete", + "description": "os_compute_api:os-aggregates:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:add_host", + "description": "os_compute_api:os-aggregates:add_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:remove_host", + "description": "os_compute_api:os-aggregates:remove_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:set_metadata", + "description": "os_compute_api:os-aggregates:set_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-agents", + "description": "os_compute_api:os-agents action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-agents:discoverable", + "description": "os_compute_api:os-agents:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-attach-interfaces", + "description": "os_compute_api:os-attach-interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-attach-interfaces:discoverable", + "description": "os_compute_api:os-attach-interfaces:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-baremetal-nodes", + "description": "os_compute_api:os-baremetal-nodes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-baremetal-nodes:discoverable", + "description": "os_compute_api:os-baremetal-nodes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable", + "description": "os_compute_api:os-block-device-mapping-v1:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells", + "description": "os_compute_api:os-cells action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:create", + "description": "os_compute_api:os-cells:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:delete", + "description": "os_compute_api:os-cells:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:update", + "description": "os_compute_api:os-cells:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:sync_instances", + "description": "os_compute_api:os-cells:sync_instances action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:discoverable", + "description": "os_compute_api:os-cells:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-certificates:create", + "description": "os_compute_api:os-certificates:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-certificates:show", + "description": "os_compute_api:os-certificates:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-certificates:discoverable", + "description": "os_compute_api:os-certificates:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cloudpipe", + "description": "os_compute_api:os-cloudpipe action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cloudpipe:discoverable", + "description": "os_compute_api:os-cloudpipe:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-config-drive", + "description": "os_compute_api:os-config-drive action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:discoverable", + "description": "os_compute_api:os-consoles:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:create", + "description": "os_compute_api:os-consoles:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:delete", + "description": "os_compute_api:os-consoles:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:index", + "description": "os_compute_api:os-consoles:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:show", + "description": "os_compute_api:os-consoles:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-console-output:discoverable", + "description": "os_compute_api:os-console-output:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-console-output", + "description": "os_compute_api:os-console-output action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-remote-consoles", + "description": "os_compute_api:os-remote-consoles action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-remote-consoles:discoverable", + "description": "os_compute_api:os-remote-consoles:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-create-backup:discoverable", + "description": "os_compute_api:os-create-backup:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-create-backup", + "description": "os_compute_api:os-create-backup action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-deferred-delete", + "description": "os_compute_api:os-deferred-delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-deferred-delete:discoverable", + "description": "os_compute_api:os-deferred-delete:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-disk-config", + "description": "os_compute_api:os-disk-config action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-disk-config:discoverable", + "description": "os_compute_api:os-disk-config:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-evacuate", + "description": "os_compute_api:os-evacuate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-evacuate:discoverable", + "description": "os_compute_api:os-evacuate:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-server-attributes", + "description": "os_compute_api:os-extended-server-attributes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-server-attributes:discoverable", + "description": "os_compute_api:os-extended-server-attributes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-status", + "description": "os_compute_api:os-extended-status action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-status:discoverable", + "description": "os_compute_api:os-extended-status:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-availability-zone", + "description": "os_compute_api:os-extended-availability-zone action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-availability-zone:discoverable", + "description": "os_compute_api:os-extended-availability-zone:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:extensions", + "description": "os_compute_api:extensions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:extension_info:discoverable", + "description": "os_compute_api:extension_info:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-volumes", + "description": "os_compute_api:os-extended-volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-volumes:discoverable", + "description": "os_compute_api:os-extended-volumes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fixed-ips", + "description": "os_compute_api:os-fixed-ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fixed-ips:discoverable", + "description": "os_compute_api:os-fixed-ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access", + "description": "os_compute_api:os-flavor-access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access:discoverable", + "description": "os_compute_api:os-flavor-access:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access", + "description": "os_compute_api:os-flavor-access:remove_tenant_access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access:add_tenant_access", + "description": "os_compute_api:os-flavor-access:add_tenant_access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-rxtx", + "description": "os_compute_api:os-flavor-rxtx action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-rxtx:discoverable", + "description": "os_compute_api:os-flavor-rxtx:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:flavors:discoverable", + "description": "os_compute_api:flavors:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable", + "description": "os_compute_api:os-flavor-extra-specs:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:index", + "description": "os_compute_api:os-flavor-extra-specs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:show", + "description": "os_compute_api:os-flavor-extra-specs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:create", + "description": "os_compute_api:os-flavor-extra-specs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:update", + "description": "os_compute_api:os-flavor-extra-specs:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:delete", + "description": "os_compute_api:os-flavor-extra-specs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-manage:discoverable", + "description": "os_compute_api:os-flavor-manage:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-manage", + "description": "os_compute_api:os-flavor-manage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns", + "description": "os_compute_api:os-floating-ip-dns action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns:discoverable", + "description": "os_compute_api:os-floating-ip-dns:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:update", + "description": "os_compute_api:os-floating-ip-dns:domain:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete", + "description": "os_compute_api:os-floating-ip-dns:domain:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-pools", + "description": "os_compute_api:os-floating-ip-pools action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-pools:discoverable", + "description": "os_compute_api:os-floating-ip-pools:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips", + "description": "os_compute_api:os-floating-ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips:discoverable", + "description": "os_compute_api:os-floating-ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips-bulk", + "description": "os_compute_api:os-floating-ips-bulk action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable", + "description": "os_compute_api:os-floating-ips-bulk:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fping", + "description": "os_compute_api:os-fping action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fping:discoverable", + "description": "os_compute_api:os-fping:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fping:all_tenants", + "description": "os_compute_api:os-fping:all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hide-server-addresses", + "description": "os_compute_api:os-hide-server-addresses action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hide-server-addresses:discoverable", + "description": "os_compute_api:os-hide-server-addresses:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hosts", + "description": "os_compute_api:os-hosts action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hosts:discoverable", + "description": "os_compute_api:os-hosts:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hypervisors", + "description": "os_compute_api:os-hypervisors action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hypervisors:discoverable", + "description": "os_compute_api:os-hypervisors:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:images:discoverable", + "description": "os_compute_api:images:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:image-size", + "description": "os_compute_api:image-size action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:image-size:discoverable", + "description": "os_compute_api:image-size:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-actions", + "description": "os_compute_api:os-instance-actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-actions:discoverable", + "description": "os_compute_api:os-instance-actions:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-actions:events", + "description": "os_compute_api:os-instance-actions:events action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-usage-audit-log", + "description": "os_compute_api:os-instance-usage-audit-log action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable", + "description": "os_compute_api:os-instance-usage-audit-log:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:ips:discoverable", + "description": "os_compute_api:ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:ips:index", + "description": "os_compute_api:ips:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:ips:show", + "description": "os_compute_api:ips:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:discoverable", + "description": "os_compute_api:os-keypairs:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs", + "description": "os_compute_api:os-keypairs action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:index", + "description": "os_compute_api:os-keypairs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:show", + "description": "os_compute_api:os-keypairs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:create", + "description": "os_compute_api:os-keypairs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:delete", + "description": "os_compute_api:os-keypairs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:limits:discoverable", + "description": "os_compute_api:limits:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:limits", + "description": "os_compute_api:limits action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:discoverable", + "description": "os_compute_api:os-lock-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:lock", + "description": "os_compute_api:os-lock-server:lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:unlock", + "description": "os_compute_api:os-lock-server:unlock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override", + "description": "os_compute_api:os-lock-server:unlock:unlock_override action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrate-server:discoverable", + "description": "os_compute_api:os-migrate-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrate-server:migrate", + "description": "os_compute_api:os-migrate-server:migrate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrate-server:migrate_live", + "description": "os_compute_api:os-migrate-server:migrate_live action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-multinic", + "description": "os_compute_api:os-multinic action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-multinic:discoverable", + "description": "os_compute_api:os-multinic:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks", + "description": "os_compute_api:os-networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks:view", + "description": "os_compute_api:os-networks:view action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks:discoverable", + "description": "os_compute_api:os-networks:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks-associate", + "description": "os_compute_api:os-networks-associate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks-associate:discoverable", + "description": "os_compute_api:os-networks-associate:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pause-server:discoverable", + "description": "os_compute_api:os-pause-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pause-server:pause", + "description": "os_compute_api:os-pause-server:pause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pause-server:unpause", + "description": "os_compute_api:os-pause-server:unpause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:pci_servers", + "description": "os_compute_api:os-pci:pci_servers action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:discoverable", + "description": "os_compute_api:os-pci:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:index", + "description": "os_compute_api:os-pci:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:detail", + "description": "os_compute_api:os-pci:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:show", + "description": "os_compute_api:os-pci:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-personality:discoverable", + "description": "os_compute_api:os-personality:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable", + "description": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:discoverable", + "description": "os_compute_api:os-quota-sets:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:show", + "description": "os_compute_api:os-quota-sets:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:defaults", + "description": "os_compute_api:os-quota-sets:defaults action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:update", + "description": "os_compute_api:os-quota-sets:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:delete", + "description": "os_compute_api:os-quota-sets:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:detail", + "description": "os_compute_api:os-quota-sets:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-class-sets:update", + "description": "os_compute_api:os-quota-class-sets:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-class-sets:show", + "description": "os_compute_api:os-quota-class-sets:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-class-sets:discoverable", + "description": "os_compute_api:os-quota-class-sets:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-rescue", + "description": "os_compute_api:os-rescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-rescue:discoverable", + "description": "os_compute_api:os-rescue:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-scheduler-hints:discoverable", + "description": "os_compute_api:os-scheduler-hints:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-group-default-rules:discoverable", + "description": "os_compute_api:os-security-group-default-rules:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-group-default-rules", + "description": "os_compute_api:os-security-group-default-rules action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-groups", + "description": "os_compute_api:os-security-groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-groups:discoverable", + "description": "os_compute_api:os-security-groups:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-diagnostics", + "description": "os_compute_api:os-server-diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-diagnostics:discoverable", + "description": "os_compute_api:os-server-diagnostics:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-password", + "description": "os_compute_api:os-server-password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-password:discoverable", + "description": "os_compute_api:os-server-password:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-usage", + "description": "os_compute_api:os-server-usage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-usage:discoverable", + "description": "os_compute_api:os-server-usage:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-groups", + "description": "os_compute_api:os-server-groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-groups:discoverable", + "description": "os_compute_api:os-server-groups:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-services", + "description": "os_compute_api:os-services action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-services:discoverable", + "description": "os_compute_api:os-services:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:discoverable", + "description": "os_compute_api:server-metadata:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:index", + "description": "os_compute_api:server-metadata:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:show", + "description": "os_compute_api:server-metadata:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:delete", + "description": "os_compute_api:server-metadata:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:create", + "description": "os_compute_api:server-metadata:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:update", + "description": "os_compute_api:server-metadata:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:update_all", + "description": "os_compute_api:server-metadata:update_all action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:discoverable", + "description": "os_compute_api:servers:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:shelve", + "description": "os_compute_api:os-shelve:shelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:shelve:discoverable", + "description": "os_compute_api:os-shelve:shelve:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:shelve_offload", + "description": "os_compute_api:os-shelve:shelve_offload action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable", + "description": "os_compute_api:os-simple-tenant-usage:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-simple-tenant-usage:show", + "description": "os_compute_api:os-simple-tenant-usage:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-simple-tenant-usage:list", + "description": "os_compute_api:os-simple-tenant-usage:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-suspend-server:discoverable", + "description": "os_compute_api:os-suspend-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-suspend-server:suspend", + "description": "os_compute_api:os-suspend-server:suspend action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-suspend-server:resume", + "description": "os_compute_api:os-suspend-server:resume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-tenant-networks", + "description": "os_compute_api:os-tenant-networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-tenant-networks:discoverable", + "description": "os_compute_api:os-tenant-networks:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:unshelve", + "description": "os_compute_api:os-shelve:unshelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-user-data:discoverable", + "description": "os_compute_api:os-user-data:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-virtual-interfaces", + "description": "os_compute_api:os-virtual-interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-virtual-interfaces:discoverable", + "description": "os_compute_api:os-virtual-interfaces:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes", + "description": "os_compute_api:os-volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes:discoverable", + "description": "os_compute_api:os-volumes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:index", + "description": "os_compute_api:os-volumes-attachments:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:show", + "description": "os_compute_api:os-volumes-attachments:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:create", + "description": "os_compute_api:os-volumes-attachments:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:update", + "description": "os_compute_api:os-volumes-attachments:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:delete", + "description": "os_compute_api:os-volumes-attachments:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:discoverable", + "description": "os_compute_api:os-volumes-attachments:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-availability-zone:list", + "description": "os_compute_api:os-availability-zone:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-availability-zone:discoverable", + "description": "os_compute_api:os-availability-zone:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-availability-zone:detail", + "description": "os_compute_api:os-availability-zone:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-used-limits", + "description": "os_compute_api:os-used-limits action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-used-limits:discoverable", + "description": "os_compute_api:os-used-limits:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrations:index", + "description": "os_compute_api:os-migrations:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrations:discoverable", + "description": "os_compute_api:os-migrations:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:create", + "description": "os_compute_api:os-assisted-volume-snapshots:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete", + "description": "os_compute_api:os-assisted-volume-snapshots:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable", + "description": "os_compute_api:os-assisted-volume-snapshots:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-console-auth-tokens", + "description": "os_compute_api:os-console-auth-tokens action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-external-events:create", + "description": "os_compute_api:os-server-external-events:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "action_id", + "description": "" + } + ], + "action_data": [ + { + "name": "volume:create", + "description": "volume:create action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete", + "description": "volume:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get", + "description": "volume:get action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_all", + "description": "volume:get_all action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_volume_metadata", + "description": "volume:get_volume_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete_volume_metadata", + "description": "volume:delete_volume_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_volume_metadata", + "description": "volume:update_volume_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_volume_admin_metadata", + "description": "volume:get_volume_admin_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_volume_admin_metadata", + "description": "volume:update_volume_admin_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_snapshot", + "description": "volume:get_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_all_snapshots", + "description": "volume:get_all_snapshots action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:create_snapshot", + "description": "volume:create_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete_snapshot", + "description": "volume:delete_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_snapshot", + "description": "volume:update_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:extend", + "description": "volume:extend action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_readonly_flag", + "description": "volume:update_readonly_flag action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:retype", + "description": "volume:retype action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update", + "description": "volume:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:types_manage", + "description": "volume_extension:types_manage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:types_extra_specs", + "description": "volume_extension:types_extra_specs action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:access_types_qos_specs_id", + "description": "volume_extension:access_types_qos_specs_id action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:access_types_extra_specs", + "description": "volume_extension:access_types_extra_specs action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_access", + "description": "volume_extension:volume_type_access action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_access:addProjectAccess", + "description": "volume_extension:volume_type_access:addProjectAccess action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_access:removeProjectAccess", + "description": "volume_extension:volume_type_access:removeProjectAccess action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_encryption", + "description": "volume_extension:volume_type_encryption action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_encryption_metadata", + "description": "volume_extension:volume_encryption_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:extended_snapshot_attributes", + "description": "volume_extension:extended_snapshot_attributes action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_image_metadata", + "description": "volume_extension:volume_image_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quotas:show", + "description": "volume_extension:quotas:show action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quotas:update", + "description": "volume_extension:quotas:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quotas:delete", + "description": "volume_extension:quotas:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quota_classes", + "description": "volume_extension:quota_classes action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use", + "description": "volume_extension:quota_classes:validate_setup_for_nested_quota_use action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:reset_status", + "description": "volume_extension:volume_admin_actions:reset_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:snapshot_admin_actions:reset_status", + "description": "volume_extension:snapshot_admin_actions:reset_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:backup_admin_actions:reset_status", + "description": "volume_extension:backup_admin_actions:reset_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:force_delete", + "description": "volume_extension:volume_admin_actions:force_delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:force_detach", + "description": "volume_extension:volume_admin_actions:force_detach action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:snapshot_admin_actions:force_delete", + "description": "volume_extension:snapshot_admin_actions:force_delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:backup_admin_actions:force_delete", + "description": "volume_extension:backup_admin_actions:force_delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume", + "description": "volume_extension:volume_admin_actions:migrate_volume action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion", + "description": "volume_extension:volume_admin_actions:migrate_volume_completion action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_host_attribute", + "description": "volume_extension:volume_host_attribute action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_tenant_attribute", + "description": "volume_extension:volume_tenant_attribute action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_mig_status_attribute", + "description": "volume_extension:volume_mig_status_attribute action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:hosts", + "description": "volume_extension:hosts action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:services:index", + "description": "volume_extension:services:index action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:services:update", + "description": "volume_extension:services:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_manage", + "description": "volume_extension:volume_manage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_unmanage", + "description": "volume_extension:volume_unmanage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:capabilities", + "description": "volume_extension:capabilities action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:create_transfer", + "description": "volume:create_transfer action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:accept_transfer", + "description": "volume:accept_transfer action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete_transfer", + "description": "volume:delete_transfer action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_all_transfers", + "description": "volume:get_all_transfers action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:replication:promote", + "description": "volume_extension:replication:promote action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:replication:reenable", + "description": "volume_extension:replication:reenable action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:enable_replication", + "description": "volume:enable_replication action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:disable_replication", + "description": "volume:disable_replication action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:failover_replication", + "description": "volume:failover_replication action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:list_replication_targets", + "description": "volume:list_replication_targets action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:create", + "description": "backup:create action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:delete", + "description": "backup:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:get", + "description": "backup:get action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:get_all", + "description": "backup:get_all action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:restore", + "description": "backup:restore action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:backup-import", + "description": "backup:backup-import action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:backup-export", + "description": "backup:backup-export action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status", + "description": "snapshot_extension:snapshot_actions:update_snapshot_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "snapshot_extension:snapshot_manage", + "description": "snapshot_extension:snapshot_manage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "snapshot_extension:snapshot_unmanage", + "description": "snapshot_extension:snapshot_unmanage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:create", + "description": "consistencygroup:create action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:delete", + "description": "consistencygroup:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:update", + "description": "consistencygroup:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get", + "description": "consistencygroup:get action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get_all", + "description": "consistencygroup:get_all action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:create_cgsnapshot", + "description": "consistencygroup:create_cgsnapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:delete_cgsnapshot", + "description": "consistencygroup:delete_cgsnapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get_cgsnapshot", + "description": "consistencygroup:get_cgsnapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get_all_cgsnapshots", + "description": "consistencygroup:get_all_cgsnapshots action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "scheduler_extension:scheduler_stats:get_pools", + "description": "scheduler_extension:scheduler_stats:get_pools action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_image", + "description": "add_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_image", + "description": "delete_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_image", + "description": "get_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_images", + "description": "get_images action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_image", + "description": "modify_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "publicize_image", + "description": "publicize_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "communitize_image", + "description": "communitize_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "copy_from", + "description": "copy_from action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "download_image", + "description": "download_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "upload_image", + "description": "upload_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_image_location", + "description": "delete_image_location action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_image_location", + "description": "get_image_location action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "set_image_location", + "description": "set_image_location action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_member", + "description": "add_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_member", + "description": "delete_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_member", + "description": "get_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_members", + "description": "get_members action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_member", + "description": "modify_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "manage_image_cache", + "description": "manage_image_cache action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_task", + "description": "get_task action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_tasks", + "description": "get_tasks action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_task", + "description": "add_task action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_task", + "description": "modify_task action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "tasks_api_access", + "description": "tasks_api_access action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "deactivate", + "description": "deactivate action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "reactivate", + "description": "reactivate action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_namespace", + "description": "get_metadef_namespace action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_namespaces", + "description": "get_metadef_namespaces action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_namespace", + "description": "modify_metadef_namespace action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_namespace", + "description": "add_metadef_namespace action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_object", + "description": "get_metadef_object action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_objects", + "description": "get_metadef_objects action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_object", + "description": "modify_metadef_object action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_object", + "description": "add_metadef_object action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "list_metadef_resource_types", + "description": "list_metadef_resource_types action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_resource_type", + "description": "get_metadef_resource_type action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_resource_type_association", + "description": "add_metadef_resource_type_association action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_property", + "description": "get_metadef_property action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_properties", + "description": "get_metadef_properties action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_property", + "description": "modify_metadef_property action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_property", + "description": "add_metadef_property action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_tag", + "description": "get_metadef_tag action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_tags", + "description": "get_metadef_tags action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_tag", + "description": "modify_metadef_tag action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_tag", + "description": "add_metadef_tag action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_tags", + "description": "add_metadef_tags action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_region", + "description": "identity:get_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_regions", + "description": "identity:list_regions action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_region", + "description": "identity:create_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_region", + "description": "identity:update_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_region", + "description": "identity:delete_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_service", + "description": "identity:get_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_services", + "description": "identity:list_services action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_service", + "description": "identity:create_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_service", + "description": "identity:update_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_service", + "description": "identity:delete_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_endpoint", + "description": "identity:get_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints", + "description": "identity:list_endpoints action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_endpoint", + "description": "identity:create_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_endpoint", + "description": "identity:update_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_endpoint", + "description": "identity:delete_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_registered_limit", + "description": "identity:get_registered_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_registered_limits", + "description": "identity:list_registered_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_registered_limits", + "description": "identity:create_registered_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_registered_limits", + "description": "identity:update_registered_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_registered_limit", + "description": "identity:delete_registered_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_limit", + "description": "identity:get_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_limits", + "description": "identity:list_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_limits", + "description": "identity:create_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_limits", + "description": "identity:update_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_limit", + "description": "identity:delete_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain", + "description": "identity:get_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_domains", + "description": "identity:list_domains action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_domain", + "description": "identity:create_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_domain", + "description": "identity:update_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_domain", + "description": "identity:delete_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_target_project_domain_id", + "description": "admin_and_matching_target_project_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_project_domain_id", + "description": "admin_and_matching_project_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_project", + "description": "identity:get_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects", + "description": "identity:list_projects action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_user_projects", + "description": "identity:list_user_projects action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_project", + "description": "identity:create_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_project", + "description": "identity:update_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_project", + "description": "identity:delete_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_project_tag", + "description": "identity:create_project_tag action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_project_tag", + "description": "identity:delete_project_tag action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_project_tag", + "description": "identity:get_project_tag action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_project_tags", + "description": "identity:list_project_tags action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_project_tags", + "description": "identity:delete_project_tags action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_project_tags", + "description": "identity:update_project_tags action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_target_user_domain_id", + "description": "admin_and_matching_target_user_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_user_domain_id", + "description": "admin_and_matching_user_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_user", + "description": "identity:get_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_users", + "description": "identity:list_users action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_user", + "description": "identity:create_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_user", + "description": "identity:update_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_user", + "description": "identity:delete_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_target_group_domain_id", + "description": "admin_and_matching_target_group_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_group_domain_id", + "description": "admin_and_matching_group_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_group", + "description": "identity:get_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_groups", + "description": "identity:list_groups action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_groups_for_user", + "description": "identity:list_groups_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_group", + "description": "identity:create_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_group", + "description": "identity:update_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_group", + "description": "identity:delete_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_users_in_group", + "description": "identity:list_users_in_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:remove_user_from_group", + "description": "identity:remove_user_from_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_user_in_group", + "description": "identity:check_user_in_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:add_user_to_group", + "description": "identity:add_user_to_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_credential", + "description": "identity:get_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_credentials", + "description": "identity:list_credentials action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_credential", + "description": "identity:create_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_credential", + "description": "identity:update_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_credential", + "description": "identity:delete_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_get_credential", + "description": "identity:ec2_get_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_list_credentials", + "description": "identity:ec2_list_credentials action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_create_credential", + "description": "identity:ec2_create_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_delete_credential", + "description": "identity:ec2_delete_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_role", + "description": "identity:get_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_roles", + "description": "identity:list_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_role", + "description": "identity:create_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_role", + "description": "identity:update_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_role", + "description": "identity:delete_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain_role", + "description": "identity:get_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_domain_roles", + "description": "identity:list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_domain_role", + "description": "identity:create_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_domain_role", + "description": "identity:update_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_domain_role", + "description": "identity:delete_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_matches_domain_role", + "description": "domain_admin_matches_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_domain_roles", + "description": "get_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_matches_target_domain_role", + "description": "domain_admin_matches_target_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_matches_target_domain_role", + "description": "project_admin_matches_target_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "list_domain_roles", + "description": "list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_matches_filter_on_list_domain_roles", + "description": "domain_admin_matches_filter_on_list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_matches_filter_on_list_domain_roles", + "description": "project_admin_matches_filter_on_list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_prior_role_domain_id", + "description": "admin_and_matching_prior_role_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "implied_role_matches_prior_role_domain_or_global", + "description": "implied_role_matches_prior_role_domain_or_global action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_implied_role", + "description": "identity:get_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_implied_roles", + "description": "identity:list_implied_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_implied_role", + "description": "identity:create_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_implied_role", + "description": "identity:delete_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_role_inference_rules", + "description": "identity:list_role_inference_rules action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_implied_role", + "description": "identity:check_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_system_grants_for_user", + "description": "identity:list_system_grants_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_system_grant_for_user", + "description": "identity:check_system_grant_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_system_grant_for_user", + "description": "identity:create_system_grant_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_system_grant_for_user", + "description": "identity:revoke_system_grant_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_system_grants_for_group", + "description": "identity:list_system_grants_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_system_grant_for_group", + "description": "identity:check_system_grant_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_system_grant_for_group", + "description": "identity:create_system_grant_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_system_grant_for_group", + "description": "identity:revoke_system_grant_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_grant", + "description": "identity:check_grant action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_grants", + "description": "identity:list_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_grant", + "description": "identity:create_grant action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_grant", + "description": "identity:revoke_grant action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_grants", + "description": "domain_admin_for_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_global_role_grants", + "description": "domain_admin_for_global_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_domain_role_grants", + "description": "domain_admin_for_domain_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_grant_match", + "description": "domain_admin_grant_match action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_grants", + "description": "project_admin_for_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_global_role_grants", + "description": "project_admin_for_global_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_domain_role_grants", + "description": "project_admin_for_domain_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_list_grants", + "description": "domain_admin_for_list_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_list_grants", + "description": "project_admin_for_list_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_on_domain_filter", + "description": "admin_on_domain_filter action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_on_project_filter", + "description": "admin_on_project_filter action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_on_domain_of_project_filter", + "description": "admin_on_domain_of_project_filter action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_role_assignments", + "description": "identity:list_role_assignments action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_role_assignments_for_tree", + "description": "identity:list_role_assignments_for_tree action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_policy", + "description": "identity:get_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_policies", + "description": "identity:list_policies action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy", + "description": "identity:create_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_policy", + "description": "identity:update_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy", + "description": "identity:delete_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_token", + "description": "identity:check_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:validate_token", + "description": "identity:validate_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:validate_token_head", + "description": "identity:validate_token_head action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revocation_list", + "description": "identity:revocation_list action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_token", + "description": "identity:revoke_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_trust", + "description": "identity:create_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_trusts", + "description": "identity:list_trusts action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_roles_for_trust", + "description": "identity:list_roles_for_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_role_for_trust", + "description": "identity:get_role_for_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_trust", + "description": "identity:delete_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_trust", + "description": "identity:get_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_consumer", + "description": "identity:create_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_consumer", + "description": "identity:get_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_consumers", + "description": "identity:list_consumers action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_consumer", + "description": "identity:delete_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_consumer", + "description": "identity:update_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:authorize_request_token", + "description": "identity:authorize_request_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_access_token_roles", + "description": "identity:list_access_token_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_access_token_role", + "description": "identity:get_access_token_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_access_tokens", + "description": "identity:list_access_tokens action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_access_token", + "description": "identity:get_access_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_access_token", + "description": "identity:delete_access_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects_for_endpoint", + "description": "identity:list_projects_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:add_endpoint_to_project", + "description": "identity:add_endpoint_to_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_endpoint_in_project", + "description": "identity:check_endpoint_in_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints_for_project", + "description": "identity:list_endpoints_for_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:remove_endpoint_from_project", + "description": "identity:remove_endpoint_from_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_endpoint_group", + "description": "identity:create_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoint_groups", + "description": "identity:list_endpoint_groups action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_endpoint_group", + "description": "identity:get_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_endpoint_group", + "description": "identity:update_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_endpoint_group", + "description": "identity:delete_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects_associated_with_endpoint_group", + "description": "identity:list_projects_associated_with_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints_associated_with_endpoint_group", + "description": "identity:list_endpoints_associated_with_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_endpoint_group_in_project", + "description": "identity:get_endpoint_group_in_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoint_groups_for_project", + "description": "identity:list_endpoint_groups_for_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:add_endpoint_group_to_project", + "description": "identity:add_endpoint_group_to_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:remove_endpoint_group_from_project", + "description": "identity:remove_endpoint_group_from_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_identity_provider", + "description": "identity:create_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_identity_providers", + "description": "identity:list_identity_providers action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_identity_provider", + "description": "identity:get_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_identity_provider", + "description": "identity:update_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_identity_provider", + "description": "identity:delete_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_protocol", + "description": "identity:create_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_protocol", + "description": "identity:update_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_protocol", + "description": "identity:get_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_protocols", + "description": "identity:list_protocols action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_protocol", + "description": "identity:delete_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_mapping", + "description": "identity:create_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_mapping", + "description": "identity:get_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_mappings", + "description": "identity:list_mappings action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_mapping", + "description": "identity:delete_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_mapping", + "description": "identity:update_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_service_provider", + "description": "identity:create_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_service_providers", + "description": "identity:list_service_providers action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_service_provider", + "description": "identity:get_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_service_provider", + "description": "identity:update_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_service_provider", + "description": "identity:delete_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_catalog", + "description": "identity:get_auth_catalog action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_projects", + "description": "identity:get_auth_projects action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_domains", + "description": "identity:get_auth_domains action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_system", + "description": "identity:get_auth_system action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects_for_user", + "description": "identity:list_projects_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_domains_for_user", + "description": "identity:list_domains_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_revoke_events", + "description": "identity:list_revoke_events action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy_association_for_endpoint", + "description": "identity:create_policy_association_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_policy_association_for_endpoint", + "description": "identity:check_policy_association_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy_association_for_endpoint", + "description": "identity:delete_policy_association_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy_association_for_service", + "description": "identity:create_policy_association_for_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_policy_association_for_service", + "description": "identity:check_policy_association_for_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy_association_for_service", + "description": "identity:delete_policy_association_for_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy_association_for_region_and_service", + "description": "identity:create_policy_association_for_region_and_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_policy_association_for_region_and_service", + "description": "identity:check_policy_association_for_region_and_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy_association_for_region_and_service", + "description": "identity:delete_policy_association_for_region_and_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_policy_for_endpoint", + "description": "identity:get_policy_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints_for_policy", + "description": "identity:list_endpoints_for_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_domain_config", + "description": "identity:create_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain_config", + "description": "identity:get_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_security_compliance_domain_config", + "description": "identity:get_security_compliance_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_domain_config", + "description": "identity:update_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_domain_config", + "description": "identity:delete_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain_config_default", + "description": "identity:get_domain_config_default action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_application_credential", + "description": "identity:get_application_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_application_credentials", + "description": "identity:list_application_credentials action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_application_credential", + "description": "identity:create_application_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_application_credential", + "description": "identity:delete_application_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_subnet", + "description": "create_subnet action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_subnet:segment_id", + "description": "create_subnet:segment_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_subnet:service_types", + "description": "create_subnet:service_types action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_subnet", + "description": "get_subnet action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_subnet:segment_id", + "description": "get_subnet:segment_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_subnet", + "description": "update_subnet action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_subnet:service_types", + "description": "update_subnet:service_types action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_subnet", + "description": "delete_subnet action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_subnetpool", + "description": "create_subnetpool action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_subnetpool:shared", + "description": "create_subnetpool:shared action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_subnetpool:is_default", + "description": "create_subnetpool:is_default action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_subnetpool", + "description": "get_subnetpool action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_subnetpool", + "description": "update_subnetpool action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_subnetpool:is_default", + "description": "update_subnetpool:is_default action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_subnetpool", + "description": "delete_subnetpool action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_address_scope", + "description": "create_address_scope action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_address_scope:shared", + "description": "create_address_scope:shared action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_address_scope", + "description": "get_address_scope action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_address_scope", + "description": "update_address_scope action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_address_scope:shared", + "description": "update_address_scope:shared action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_address_scope", + "description": "delete_address_scope action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network", + "description": "create_network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network", + "description": "get_network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network:router:external", + "description": "get_network:router:external action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network:segments", + "description": "get_network:segments action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network:provider:network_type", + "description": "get_network:provider:network_type action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network:provider:physical_network", + "description": "get_network:provider:physical_network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network:provider:segmentation_id", + "description": "get_network:provider:segmentation_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network:queue_id", + "description": "get_network:queue_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network_ip_availabilities", + "description": "get_network_ip_availabilities action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network_ip_availability", + "description": "get_network_ip_availability action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network:shared", + "description": "create_network:shared action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network:router:external", + "description": "create_network:router:external action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network:is_default", + "description": "create_network:is_default action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network:segments", + "description": "create_network:segments action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network:provider:network_type", + "description": "create_network:provider:network_type action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network:provider:physical_network", + "description": "create_network:provider:physical_network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network:provider:segmentation_id", + "description": "create_network:provider:segmentation_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network", + "description": "update_network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network:segments", + "description": "update_network:segments action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network:shared", + "description": "update_network:shared action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network:provider:network_type", + "description": "update_network:provider:network_type action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network:provider:physical_network", + "description": "update_network:provider:physical_network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network:provider:segmentation_id", + "description": "update_network:provider:segmentation_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network:router:external", + "description": "update_network:router:external action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_network", + "description": "delete_network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_segment", + "description": "create_segment action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_segment", + "description": "get_segment action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_segment", + "description": "update_segment action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_segment", + "description": "delete_segment action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network_device", + "description": "network_device action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port", + "description": "create_port action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:device_owner", + "description": "create_port:device_owner action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:mac_address", + "description": "create_port:mac_address action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:fixed_ips:ip_address", + "description": "create_port:fixed_ips:ip_address action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:fixed_ips:subnet_id", + "description": "create_port:fixed_ips:subnet_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:port_security_enabled", + "description": "create_port:port_security_enabled action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:binding:host_id", + "description": "create_port:binding:host_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:binding:profile", + "description": "create_port:binding:profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:mac_learning_enabled", + "description": "create_port:mac_learning_enabled action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_port:allowed_address_pairs", + "description": "create_port:allowed_address_pairs action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_port", + "description": "get_port action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_port:queue_id", + "description": "get_port:queue_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_port:binding:vif_type", + "description": "get_port:binding:vif_type action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_port:binding:vif_details", + "description": "get_port:binding:vif_details action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_port:binding:host_id", + "description": "get_port:binding:host_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_port:binding:profile", + "description": "get_port:binding:profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port", + "description": "update_port action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:device_owner", + "description": "update_port:device_owner action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:mac_address", + "description": "update_port:mac_address action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:fixed_ips:ip_address", + "description": "update_port:fixed_ips:ip_address action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:fixed_ips:subnet_id", + "description": "update_port:fixed_ips:subnet_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:port_security_enabled", + "description": "update_port:port_security_enabled action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:binding:host_id", + "description": "update_port:binding:host_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:binding:profile", + "description": "update_port:binding:profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:mac_learning_enabled", + "description": "update_port:mac_learning_enabled action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:allowed_address_pairs", + "description": "update_port:allowed_address_pairs action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_port:data_plane_status", + "description": "update_port:data_plane_status action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_port", + "description": "delete_port action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_router:ha", + "description": "get_router:ha action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_router", + "description": "create_router action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_router:external_gateway_info:enable_snat", + "description": "create_router:external_gateway_info:enable_snat action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_router:distributed", + "description": "create_router:distributed action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_router:ha", + "description": "create_router:ha action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_router", + "description": "get_router action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_router:distributed", + "description": "get_router:distributed action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_router", + "description": "update_router action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_router:external_gateway_info", + "description": "update_router:external_gateway_info action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_router:external_gateway_info:network_id", + "description": "update_router:external_gateway_info:network_id action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_router:external_gateway_info:enable_snat", + "description": "update_router:external_gateway_info:enable_snat action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_router:distributed", + "description": "update_router:distributed action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_router:ha", + "description": "update_router:ha action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_router", + "description": "delete_router action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_router_interface", + "description": "add_router_interface action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "remove_router_interface", + "description": "remove_router_interface action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_router:external_gateway_info:external_fixed_ips", + "description": "create_router:external_gateway_info:external_fixed_ips action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_router:external_gateway_info:external_fixed_ips", + "description": "update_router:external_gateway_info:external_fixed_ips action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_qos_queue", + "description": "create_qos_queue action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_qos_queue", + "description": "get_qos_queue action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_agent", + "description": "update_agent action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_agent", + "description": "delete_agent action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_agent", + "description": "get_agent action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_dhcp-network", + "description": "create_dhcp-network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_dhcp-network", + "description": "delete_dhcp-network action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_dhcp-networks", + "description": "get_dhcp-networks action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_l3-router", + "description": "create_l3-router action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_l3-router", + "description": "delete_l3-router action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_l3-routers", + "description": "get_l3-routers action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_dhcp-agents", + "description": "get_dhcp-agents action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_l3-agents", + "description": "get_l3-agents action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_loadbalancer-agent", + "description": "get_loadbalancer-agent action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_loadbalancer-pools", + "description": "get_loadbalancer-pools action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_agent-loadbalancers", + "description": "get_agent-loadbalancers action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_loadbalancer-hosting-agent", + "description": "get_loadbalancer-hosting-agent action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_floatingip", + "description": "create_floatingip action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_floatingip:floating_ip_address", + "description": "create_floatingip:floating_ip_address action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_floatingip", + "description": "update_floatingip action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_floatingip", + "description": "delete_floatingip action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_floatingip", + "description": "get_floatingip action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_network_profile", + "description": "create_network_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_network_profile", + "description": "update_network_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_network_profile", + "description": "delete_network_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network_profiles", + "description": "get_network_profiles action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_network_profile", + "description": "get_network_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_policy_profiles", + "description": "update_policy_profiles action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_policy_profiles", + "description": "get_policy_profiles action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_policy_profile", + "description": "get_policy_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_metering_label", + "description": "create_metering_label action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_metering_label", + "description": "delete_metering_label action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metering_label", + "description": "get_metering_label action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_metering_label_rule", + "description": "create_metering_label_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_metering_label_rule", + "description": "delete_metering_label_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metering_label_rule", + "description": "get_metering_label_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_service_provider", + "description": "get_service_provider action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_lsn", + "description": "get_lsn action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_lsn", + "description": "create_lsn action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_flavor", + "description": "create_flavor action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_flavor", + "description": "update_flavor action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_flavor", + "description": "delete_flavor action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_flavors", + "description": "get_flavors action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_flavor", + "description": "get_flavor action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_service_profile", + "description": "create_service_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_service_profile", + "description": "update_service_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_service_profile", + "description": "delete_service_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_service_profiles", + "description": "get_service_profiles action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_service_profile", + "description": "get_service_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_policy", + "description": "get_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_policy", + "description": "create_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_policy", + "description": "update_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_policy", + "description": "delete_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_policy_bandwidth_limit_rule", + "description": "get_policy_bandwidth_limit_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_policy_bandwidth_limit_rule", + "description": "create_policy_bandwidth_limit_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_policy_bandwidth_limit_rule", + "description": "delete_policy_bandwidth_limit_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_policy_bandwidth_limit_rule", + "description": "update_policy_bandwidth_limit_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_policy_dscp_marking_rule", + "description": "get_policy_dscp_marking_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_policy_dscp_marking_rule", + "description": "create_policy_dscp_marking_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_policy_dscp_marking_rule", + "description": "delete_policy_dscp_marking_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_policy_dscp_marking_rule", + "description": "update_policy_dscp_marking_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_rule_type", + "description": "get_rule_type action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_policy_minimum_bandwidth_rule", + "description": "get_policy_minimum_bandwidth_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_policy_minimum_bandwidth_rule", + "description": "create_policy_minimum_bandwidth_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_policy_minimum_bandwidth_rule", + "description": "delete_policy_minimum_bandwidth_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_policy_minimum_bandwidth_rule", + "description": "update_policy_minimum_bandwidth_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "restrict_wildcard", + "description": "restrict_wildcard action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_rbac_policy", + "description": "create_rbac_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_rbac_policy:target_tenant", + "description": "create_rbac_policy:target_tenant action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_rbac_policy", + "description": "update_rbac_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_rbac_policy:target_tenant", + "description": "update_rbac_policy:target_tenant action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_rbac_policy", + "description": "get_rbac_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_rbac_policy", + "description": "delete_rbac_policy action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_flavor_service_profile", + "description": "create_flavor_service_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_flavor_service_profile", + "description": "delete_flavor_service_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_flavor_service_profile", + "description": "get_flavor_service_profile action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_auto_allocated_topology", + "description": "get_auto_allocated_topology action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_trunk", + "description": "create_trunk action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_trunk", + "description": "get_trunk action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_trunk", + "description": "delete_trunk action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_subports", + "description": "get_subports action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_subports", + "description": "add_subports action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "remove_subports", + "description": "remove_subports action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_security_groups", + "description": "get_security_groups action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_security_group", + "description": "get_security_group action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_security_group", + "description": "create_security_group action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_security_group", + "description": "update_security_group action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_security_group", + "description": "delete_security_group action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_security_group_rules", + "description": "get_security_group_rules action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_security_group_rule", + "description": "get_security_group_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_security_group_rule", + "description": "create_security_group_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_security_group_rule", + "description": "delete_security_group_rule action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_loggable_resources", + "description": "get_loggable_resources action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "create_log", + "description": "create_log action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "update_log", + "description": "update_log action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_log", + "description": "delete_log action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_logs", + "description": "get_logs action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_log", + "description": "get_log action for neutron", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "cells_scheduler_filter:TargetCellFilter", + "description": "cells_scheduler_filter:TargetCellFilter action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create", + "description": "compute:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create:attach_network", + "description": "compute:create:attach_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create:attach_volume", + "description": "compute:create:attach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create:forced_host", + "description": "compute:create:forced_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get", + "description": "compute:get action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all", + "description": "compute:get_all action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all_tenants", + "description": "compute:get_all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:update", + "description": "compute:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_instance_metadata", + "description": "compute:get_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all_instance_metadata", + "description": "compute:get_all_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all_instance_system_metadata", + "description": "compute:get_all_instance_system_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:update_instance_metadata", + "description": "compute:update_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:delete_instance_metadata", + "description": "compute:delete_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_instance_faults", + "description": "compute:get_instance_faults action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_diagnostics", + "description": "compute:get_diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_instance_diagnostics", + "description": "compute:get_instance_diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:start", + "description": "compute:start action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:stop", + "description": "compute:stop action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_lock", + "description": "compute:get_lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:lock", + "description": "compute:lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unlock", + "description": "compute:unlock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unlock_override", + "description": "compute:unlock_override action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_vnc_console", + "description": "compute:get_vnc_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_spice_console", + "description": "compute:get_spice_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_rdp_console", + "description": "compute:get_rdp_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_serial_console", + "description": "compute:get_serial_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_mks_console", + "description": "compute:get_mks_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_console_output", + "description": "compute:get_console_output action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:reset_network", + "description": "compute:reset_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:inject_network_info", + "description": "compute:inject_network_info action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:add_fixed_ip", + "description": "compute:add_fixed_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:remove_fixed_ip", + "description": "compute:remove_fixed_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:attach_volume", + "description": "compute:attach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:detach_volume", + "description": "compute:detach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:swap_volume", + "description": "compute:swap_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:attach_interface", + "description": "compute:attach_interface action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:detach_interface", + "description": "compute:detach_interface action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:set_admin_password", + "description": "compute:set_admin_password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:rescue", + "description": "compute:rescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unrescue", + "description": "compute:unrescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:suspend", + "description": "compute:suspend action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:resume", + "description": "compute:resume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:pause", + "description": "compute:pause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unpause", + "description": "compute:unpause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:shelve", + "description": "compute:shelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:shelve_offload", + "description": "compute:shelve_offload action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unshelve", + "description": "compute:unshelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:snapshot", + "description": "compute:snapshot action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:snapshot_volume_backed", + "description": "compute:snapshot_volume_backed action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:backup", + "description": "compute:backup action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:resize", + "description": "compute:resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:confirm_resize", + "description": "compute:confirm_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:revert_resize", + "description": "compute:revert_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:rebuild", + "description": "compute:rebuild action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:reboot", + "description": "compute:reboot action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:delete", + "description": "compute:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:soft_delete", + "description": "compute:soft_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:force_delete", + "description": "compute:force_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:security_groups:add_to_instance", + "description": "compute:security_groups:add_to_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:security_groups:remove_from_instance", + "description": "compute:security_groups:remove_from_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:restore", + "description": "compute:restore action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:volume_snapshot_create", + "description": "compute:volume_snapshot_create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:volume_snapshot_delete", + "description": "compute:volume_snapshot_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:accounts", + "description": "compute_extension:accounts action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions", + "description": "compute_extension:admin_actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:pause", + "description": "compute_extension:admin_actions:pause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:unpause", + "description": "compute_extension:admin_actions:unpause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:suspend", + "description": "compute_extension:admin_actions:suspend action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:resume", + "description": "compute_extension:admin_actions:resume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:lock", + "description": "compute_extension:admin_actions:lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:unlock", + "description": "compute_extension:admin_actions:unlock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:resetNetwork", + "description": "compute_extension:admin_actions:resetNetwork action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:injectNetworkInfo", + "description": "compute_extension:admin_actions:injectNetworkInfo action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:createBackup", + "description": "compute_extension:admin_actions:createBackup action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:migrateLive", + "description": "compute_extension:admin_actions:migrateLive action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:resetState", + "description": "compute_extension:admin_actions:resetState action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:migrate", + "description": "compute_extension:admin_actions:migrate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:aggregates", + "description": "compute_extension:aggregates action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:agents", + "description": "compute_extension:agents action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:attach_interfaces", + "description": "compute_extension:attach_interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:baremetal_nodes", + "description": "compute_extension:baremetal_nodes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells", + "description": "compute_extension:cells action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:create", + "description": "compute_extension:cells:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:delete", + "description": "compute_extension:cells:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:update", + "description": "compute_extension:cells:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:sync_instances", + "description": "compute_extension:cells:sync_instances action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:certificates", + "description": "compute_extension:certificates action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cloudpipe", + "description": "compute_extension:cloudpipe action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cloudpipe_update", + "description": "compute_extension:cloudpipe_update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:config_drive", + "description": "compute_extension:config_drive action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:console_output", + "description": "compute_extension:console_output action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:consoles", + "description": "compute_extension:consoles action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:createserverext", + "description": "compute_extension:createserverext action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:deferred_delete", + "description": "compute_extension:deferred_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:disk_config", + "description": "compute_extension:disk_config action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:evacuate", + "description": "compute_extension:evacuate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_server_attributes", + "description": "compute_extension:extended_server_attributes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_status", + "description": "compute_extension:extended_status action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_availability_zone", + "description": "compute_extension:extended_availability_zone action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_ips", + "description": "compute_extension:extended_ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_ips_mac", + "description": "compute_extension:extended_ips_mac action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_vif_net", + "description": "compute_extension:extended_vif_net action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_volumes", + "description": "compute_extension:extended_volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:fixed_ips", + "description": "compute_extension:fixed_ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_access", + "description": "compute_extension:flavor_access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_access:addTenantAccess", + "description": "compute_extension:flavor_access:addTenantAccess action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_access:removeTenantAccess", + "description": "compute_extension:flavor_access:removeTenantAccess action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_disabled", + "description": "compute_extension:flavor_disabled action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_rxtx", + "description": "compute_extension:flavor_rxtx action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_swap", + "description": "compute_extension:flavor_swap action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextradata", + "description": "compute_extension:flavorextradata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:index", + "description": "compute_extension:flavorextraspecs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:show", + "description": "compute_extension:flavorextraspecs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:create", + "description": "compute_extension:flavorextraspecs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:update", + "description": "compute_extension:flavorextraspecs:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:delete", + "description": "compute_extension:flavorextraspecs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavormanage", + "description": "compute_extension:flavormanage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ip_dns", + "description": "compute_extension:floating_ip_dns action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ip_pools", + "description": "compute_extension:floating_ip_pools action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ips", + "description": "compute_extension:floating_ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ips_bulk", + "description": "compute_extension:floating_ips_bulk action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:fping", + "description": "compute_extension:fping action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:fping:all_tenants", + "description": "compute_extension:fping:all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:hide_server_addresses", + "description": "compute_extension:hide_server_addresses action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:hosts", + "description": "compute_extension:hosts action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:hypervisors", + "description": "compute_extension:hypervisors action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:image_size", + "description": "compute_extension:image_size action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:instance_actions", + "description": "compute_extension:instance_actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:instance_actions:events", + "description": "compute_extension:instance_actions:events action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:instance_usage_audit_log", + "description": "compute_extension:instance_usage_audit_log action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs", + "description": "compute_extension:keypairs action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:index", + "description": "compute_extension:keypairs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:show", + "description": "compute_extension:keypairs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:create", + "description": "compute_extension:keypairs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:delete", + "description": "compute_extension:keypairs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:multinic", + "description": "compute_extension:multinic action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:networks", + "description": "compute_extension:networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:networks:view", + "description": "compute_extension:networks:view action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:networks_associate", + "description": "compute_extension:networks_associate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-tenant-networks", + "description": "compute_extension:os-tenant-networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quotas:show", + "description": "compute_extension:quotas:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quotas:update", + "description": "compute_extension:quotas:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quotas:delete", + "description": "compute_extension:quotas:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quota_classes", + "description": "compute_extension:quota_classes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:rescue", + "description": "compute_extension:rescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:security_group_default_rules", + "description": "compute_extension:security_group_default_rules action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:security_groups", + "description": "compute_extension:security_groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_diagnostics", + "description": "compute_extension:server_diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_groups", + "description": "compute_extension:server_groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_password", + "description": "compute_extension:server_password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_usage", + "description": "compute_extension:server_usage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:services", + "description": "compute_extension:services action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:shelve", + "description": "compute_extension:shelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:shelveOffload", + "description": "compute_extension:shelveOffload action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:simple_tenant_usage:show", + "description": "compute_extension:simple_tenant_usage:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:simple_tenant_usage:list", + "description": "compute_extension:simple_tenant_usage:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:unshelve", + "description": "compute_extension:unshelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:users", + "description": "compute_extension:users action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:virtual_interfaces", + "description": "compute_extension:virtual_interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:virtual_storage_arrays", + "description": "compute_extension:virtual_storage_arrays action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volumes", + "description": "compute_extension:volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:index", + "description": "compute_extension:volume_attachments:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:show", + "description": "compute_extension:volume_attachments:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:create", + "description": "compute_extension:volume_attachments:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:update", + "description": "compute_extension:volume_attachments:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:delete", + "description": "compute_extension:volume_attachments:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volumetypes", + "description": "compute_extension:volumetypes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:availability_zone:list", + "description": "compute_extension:availability_zone:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:availability_zone:detail", + "description": "compute_extension:availability_zone:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:used_limits_for_admin", + "description": "compute_extension:used_limits_for_admin action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:migrations:index", + "description": "compute_extension:migrations:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:create", + "description": "compute_extension:os-assisted-volume-snapshots:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:delete", + "description": "compute_extension:os-assisted-volume-snapshots:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:console_auth_tokens", + "description": "compute_extension:console_auth_tokens action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-server-external-events:create", + "description": "compute_extension:os-server-external-events:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_all", + "description": "network:get_all action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get", + "description": "network:get action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:create", + "description": "network:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:delete", + "description": "network:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:associate", + "description": "network:associate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:disassociate", + "description": "network:disassociate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_vifs_by_instance", + "description": "network:get_vifs_by_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:allocate_for_instance", + "description": "network:allocate_for_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:deallocate_for_instance", + "description": "network:deallocate_for_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:validate_networks", + "description": "network:validate_networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_instance_uuids_by_ip_filter", + "description": "network:get_instance_uuids_by_ip_filter action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_instance_id_by_floating_address", + "description": "network:get_instance_id_by_floating_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:setup_networks_on_host", + "description": "network:setup_networks_on_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_backdoor_port", + "description": "network:get_backdoor_port action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ip", + "description": "network:get_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ip_pools", + "description": "network:get_floating_ip_pools action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ip_by_address", + "description": "network:get_floating_ip_by_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ips_by_project", + "description": "network:get_floating_ips_by_project action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ips_by_fixed_address", + "description": "network:get_floating_ips_by_fixed_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:allocate_floating_ip", + "description": "network:allocate_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:associate_floating_ip", + "description": "network:associate_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:disassociate_floating_ip", + "description": "network:disassociate_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:release_floating_ip", + "description": "network:release_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:migrate_instance_start", + "description": "network:migrate_instance_start action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:migrate_instance_finish", + "description": "network:migrate_instance_finish action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_fixed_ip", + "description": "network:get_fixed_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_fixed_ip_by_address", + "description": "network:get_fixed_ip_by_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:add_fixed_ip_to_instance", + "description": "network:add_fixed_ip_to_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:remove_fixed_ip_from_instance", + "description": "network:remove_fixed_ip_from_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:add_network_to_project", + "description": "network:add_network_to_project action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_instance_nw_info", + "description": "network:get_instance_nw_info action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_dns_domains", + "description": "network:get_dns_domains action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:add_dns_entry", + "description": "network:add_dns_entry action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:modify_dns_entry", + "description": "network:modify_dns_entry action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:delete_dns_entry", + "description": "network:delete_dns_entry action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_dns_entries_by_address", + "description": "network:get_dns_entries_by_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_dns_entries_by_name", + "description": "network:get_dns_entries_by_name action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:create_private_dns_domain", + "description": "network:create_private_dns_domain action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:create_public_dns_domain", + "description": "network:create_public_dns_domain action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:delete_dns_domain", + "description": "network:delete_dns_domain action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:attach_external_network", + "description": "network:attach_external_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_vif_by_mac_address", + "description": "network:get_vif_by_mac_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:detail:get_all_tenants", + "description": "os_compute_api:servers:detail:get_all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:index:get_all_tenants", + "description": "os_compute_api:servers:index:get_all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:confirm_resize", + "description": "os_compute_api:servers:confirm_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create", + "description": "os_compute_api:servers:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create:attach_network", + "description": "os_compute_api:servers:create:attach_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create:attach_volume", + "description": "os_compute_api:servers:create:attach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create:forced_host", + "description": "os_compute_api:servers:create:forced_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:delete", + "description": "os_compute_api:servers:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:update", + "description": "os_compute_api:servers:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:detail", + "description": "os_compute_api:servers:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:index", + "description": "os_compute_api:servers:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:reboot", + "description": "os_compute_api:servers:reboot action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:rebuild", + "description": "os_compute_api:servers:rebuild action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:resize", + "description": "os_compute_api:servers:resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:revert_resize", + "description": "os_compute_api:servers:revert_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:show", + "description": "os_compute_api:servers:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create_image", + "description": "os_compute_api:servers:create_image action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create_image:allow_volume_backed", + "description": "os_compute_api:servers:create_image:allow_volume_backed action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:start", + "description": "os_compute_api:servers:start action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:stop", + "description": "os_compute_api:servers:stop action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-access-ips:discoverable", + "description": "os_compute_api:os-access-ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-access-ips", + "description": "os_compute_api:os-access-ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions", + "description": "os_compute_api:os-admin-actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:discoverable", + "description": "os_compute_api:os-admin-actions:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:reset_network", + "description": "os_compute_api:os-admin-actions:reset_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:inject_network_info", + "description": "os_compute_api:os-admin-actions:inject_network_info action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:reset_state", + "description": "os_compute_api:os-admin-actions:reset_state action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-password", + "description": "os_compute_api:os-admin-password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-password:discoverable", + "description": "os_compute_api:os-admin-password:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:discoverable", + "description": "os_compute_api:os-aggregates:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:index", + "description": "os_compute_api:os-aggregates:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:create", + "description": "os_compute_api:os-aggregates:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:show", + "description": "os_compute_api:os-aggregates:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:update", + "description": "os_compute_api:os-aggregates:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:delete", + "description": "os_compute_api:os-aggregates:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:add_host", + "description": "os_compute_api:os-aggregates:add_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:remove_host", + "description": "os_compute_api:os-aggregates:remove_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:set_metadata", + "description": "os_compute_api:os-aggregates:set_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-agents", + "description": "os_compute_api:os-agents action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-agents:discoverable", + "description": "os_compute_api:os-agents:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-attach-interfaces", + "description": "os_compute_api:os-attach-interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-attach-interfaces:discoverable", + "description": "os_compute_api:os-attach-interfaces:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-baremetal-nodes", + "description": "os_compute_api:os-baremetal-nodes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-baremetal-nodes:discoverable", + "description": "os_compute_api:os-baremetal-nodes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable", + "description": "os_compute_api:os-block-device-mapping-v1:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells", + "description": "os_compute_api:os-cells action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:create", + "description": "os_compute_api:os-cells:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:delete", + "description": "os_compute_api:os-cells:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:update", + "description": "os_compute_api:os-cells:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:sync_instances", + "description": "os_compute_api:os-cells:sync_instances action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:discoverable", + "description": "os_compute_api:os-cells:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-certificates:create", + "description": "os_compute_api:os-certificates:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-certificates:show", + "description": "os_compute_api:os-certificates:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-certificates:discoverable", + "description": "os_compute_api:os-certificates:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cloudpipe", + "description": "os_compute_api:os-cloudpipe action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cloudpipe:discoverable", + "description": "os_compute_api:os-cloudpipe:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-config-drive", + "description": "os_compute_api:os-config-drive action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:discoverable", + "description": "os_compute_api:os-consoles:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:create", + "description": "os_compute_api:os-consoles:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:delete", + "description": "os_compute_api:os-consoles:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:index", + "description": "os_compute_api:os-consoles:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:show", + "description": "os_compute_api:os-consoles:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-console-output:discoverable", + "description": "os_compute_api:os-console-output:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-console-output", + "description": "os_compute_api:os-console-output action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-remote-consoles", + "description": "os_compute_api:os-remote-consoles action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-remote-consoles:discoverable", + "description": "os_compute_api:os-remote-consoles:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-create-backup:discoverable", + "description": "os_compute_api:os-create-backup:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-create-backup", + "description": "os_compute_api:os-create-backup action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-deferred-delete", + "description": "os_compute_api:os-deferred-delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-deferred-delete:discoverable", + "description": "os_compute_api:os-deferred-delete:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-disk-config", + "description": "os_compute_api:os-disk-config action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-disk-config:discoverable", + "description": "os_compute_api:os-disk-config:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-evacuate", + "description": "os_compute_api:os-evacuate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-evacuate:discoverable", + "description": "os_compute_api:os-evacuate:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-server-attributes", + "description": "os_compute_api:os-extended-server-attributes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-server-attributes:discoverable", + "description": "os_compute_api:os-extended-server-attributes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-status", + "description": "os_compute_api:os-extended-status action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-status:discoverable", + "description": "os_compute_api:os-extended-status:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-availability-zone", + "description": "os_compute_api:os-extended-availability-zone action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-availability-zone:discoverable", + "description": "os_compute_api:os-extended-availability-zone:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:extensions", + "description": "os_compute_api:extensions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:extension_info:discoverable", + "description": "os_compute_api:extension_info:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-volumes", + "description": "os_compute_api:os-extended-volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-volumes:discoverable", + "description": "os_compute_api:os-extended-volumes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fixed-ips", + "description": "os_compute_api:os-fixed-ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fixed-ips:discoverable", + "description": "os_compute_api:os-fixed-ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access", + "description": "os_compute_api:os-flavor-access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access:discoverable", + "description": "os_compute_api:os-flavor-access:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access", + "description": "os_compute_api:os-flavor-access:remove_tenant_access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access:add_tenant_access", + "description": "os_compute_api:os-flavor-access:add_tenant_access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-rxtx", + "description": "os_compute_api:os-flavor-rxtx action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-rxtx:discoverable", + "description": "os_compute_api:os-flavor-rxtx:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:flavors:discoverable", + "description": "os_compute_api:flavors:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable", + "description": "os_compute_api:os-flavor-extra-specs:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:index", + "description": "os_compute_api:os-flavor-extra-specs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:show", + "description": "os_compute_api:os-flavor-extra-specs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:create", + "description": "os_compute_api:os-flavor-extra-specs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:update", + "description": "os_compute_api:os-flavor-extra-specs:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:delete", + "description": "os_compute_api:os-flavor-extra-specs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-manage:discoverable", + "description": "os_compute_api:os-flavor-manage:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-manage", + "description": "os_compute_api:os-flavor-manage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns", + "description": "os_compute_api:os-floating-ip-dns action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns:discoverable", + "description": "os_compute_api:os-floating-ip-dns:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:update", + "description": "os_compute_api:os-floating-ip-dns:domain:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete", + "description": "os_compute_api:os-floating-ip-dns:domain:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-pools", + "description": "os_compute_api:os-floating-ip-pools action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-pools:discoverable", + "description": "os_compute_api:os-floating-ip-pools:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips", + "description": "os_compute_api:os-floating-ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips:discoverable", + "description": "os_compute_api:os-floating-ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips-bulk", + "description": "os_compute_api:os-floating-ips-bulk action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable", + "description": "os_compute_api:os-floating-ips-bulk:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fping", + "description": "os_compute_api:os-fping action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fping:discoverable", + "description": "os_compute_api:os-fping:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fping:all_tenants", + "description": "os_compute_api:os-fping:all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hide-server-addresses", + "description": "os_compute_api:os-hide-server-addresses action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hide-server-addresses:discoverable", + "description": "os_compute_api:os-hide-server-addresses:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hosts", + "description": "os_compute_api:os-hosts action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hosts:discoverable", + "description": "os_compute_api:os-hosts:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hypervisors", + "description": "os_compute_api:os-hypervisors action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hypervisors:discoverable", + "description": "os_compute_api:os-hypervisors:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:images:discoverable", + "description": "os_compute_api:images:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:image-size", + "description": "os_compute_api:image-size action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:image-size:discoverable", + "description": "os_compute_api:image-size:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-actions", + "description": "os_compute_api:os-instance-actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-actions:discoverable", + "description": "os_compute_api:os-instance-actions:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-actions:events", + "description": "os_compute_api:os-instance-actions:events action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-usage-audit-log", + "description": "os_compute_api:os-instance-usage-audit-log action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable", + "description": "os_compute_api:os-instance-usage-audit-log:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:ips:discoverable", + "description": "os_compute_api:ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:ips:index", + "description": "os_compute_api:ips:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:ips:show", + "description": "os_compute_api:ips:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:discoverable", + "description": "os_compute_api:os-keypairs:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs", + "description": "os_compute_api:os-keypairs action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:index", + "description": "os_compute_api:os-keypairs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:show", + "description": "os_compute_api:os-keypairs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:create", + "description": "os_compute_api:os-keypairs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:delete", + "description": "os_compute_api:os-keypairs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:limits:discoverable", + "description": "os_compute_api:limits:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:limits", + "description": "os_compute_api:limits action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:discoverable", + "description": "os_compute_api:os-lock-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:lock", + "description": "os_compute_api:os-lock-server:lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:unlock", + "description": "os_compute_api:os-lock-server:unlock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override", + "description": "os_compute_api:os-lock-server:unlock:unlock_override action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrate-server:discoverable", + "description": "os_compute_api:os-migrate-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrate-server:migrate", + "description": "os_compute_api:os-migrate-server:migrate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrate-server:migrate_live", + "description": "os_compute_api:os-migrate-server:migrate_live action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-multinic", + "description": "os_compute_api:os-multinic action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-multinic:discoverable", + "description": "os_compute_api:os-multinic:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks", + "description": "os_compute_api:os-networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks:view", + "description": "os_compute_api:os-networks:view action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks:discoverable", + "description": "os_compute_api:os-networks:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks-associate", + "description": "os_compute_api:os-networks-associate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks-associate:discoverable", + "description": "os_compute_api:os-networks-associate:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pause-server:discoverable", + "description": "os_compute_api:os-pause-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pause-server:pause", + "description": "os_compute_api:os-pause-server:pause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pause-server:unpause", + "description": "os_compute_api:os-pause-server:unpause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:pci_servers", + "description": "os_compute_api:os-pci:pci_servers action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:discoverable", + "description": "os_compute_api:os-pci:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:index", + "description": "os_compute_api:os-pci:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:detail", + "description": "os_compute_api:os-pci:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:show", + "description": "os_compute_api:os-pci:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-personality:discoverable", + "description": "os_compute_api:os-personality:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable", + "description": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:discoverable", + "description": "os_compute_api:os-quota-sets:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:show", + "description": "os_compute_api:os-quota-sets:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:defaults", + "description": "os_compute_api:os-quota-sets:defaults action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:update", + "description": "os_compute_api:os-quota-sets:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:delete", + "description": "os_compute_api:os-quota-sets:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:detail", + "description": "os_compute_api:os-quota-sets:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-class-sets:update", + "description": "os_compute_api:os-quota-class-sets:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-class-sets:show", + "description": "os_compute_api:os-quota-class-sets:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-class-sets:discoverable", + "description": "os_compute_api:os-quota-class-sets:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-rescue", + "description": "os_compute_api:os-rescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-rescue:discoverable", + "description": "os_compute_api:os-rescue:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-scheduler-hints:discoverable", + "description": "os_compute_api:os-scheduler-hints:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-group-default-rules:discoverable", + "description": "os_compute_api:os-security-group-default-rules:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-group-default-rules", + "description": "os_compute_api:os-security-group-default-rules action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-groups", + "description": "os_compute_api:os-security-groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-groups:discoverable", + "description": "os_compute_api:os-security-groups:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-diagnostics", + "description": "os_compute_api:os-server-diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-diagnostics:discoverable", + "description": "os_compute_api:os-server-diagnostics:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-password", + "description": "os_compute_api:os-server-password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-password:discoverable", + "description": "os_compute_api:os-server-password:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-usage", + "description": "os_compute_api:os-server-usage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-usage:discoverable", + "description": "os_compute_api:os-server-usage:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-groups", + "description": "os_compute_api:os-server-groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-groups:discoverable", + "description": "os_compute_api:os-server-groups:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-services", + "description": "os_compute_api:os-services action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-services:discoverable", + "description": "os_compute_api:os-services:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:discoverable", + "description": "os_compute_api:server-metadata:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:index", + "description": "os_compute_api:server-metadata:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:show", + "description": "os_compute_api:server-metadata:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:delete", + "description": "os_compute_api:server-metadata:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:create", + "description": "os_compute_api:server-metadata:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:update", + "description": "os_compute_api:server-metadata:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:update_all", + "description": "os_compute_api:server-metadata:update_all action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:discoverable", + "description": "os_compute_api:servers:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:shelve", + "description": "os_compute_api:os-shelve:shelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:shelve:discoverable", + "description": "os_compute_api:os-shelve:shelve:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:shelve_offload", + "description": "os_compute_api:os-shelve:shelve_offload action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable", + "description": "os_compute_api:os-simple-tenant-usage:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-simple-tenant-usage:show", + "description": "os_compute_api:os-simple-tenant-usage:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-simple-tenant-usage:list", + "description": "os_compute_api:os-simple-tenant-usage:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-suspend-server:discoverable", + "description": "os_compute_api:os-suspend-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-suspend-server:suspend", + "description": "os_compute_api:os-suspend-server:suspend action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-suspend-server:resume", + "description": "os_compute_api:os-suspend-server:resume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-tenant-networks", + "description": "os_compute_api:os-tenant-networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-tenant-networks:discoverable", + "description": "os_compute_api:os-tenant-networks:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:unshelve", + "description": "os_compute_api:os-shelve:unshelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-user-data:discoverable", + "description": "os_compute_api:os-user-data:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-virtual-interfaces", + "description": "os_compute_api:os-virtual-interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-virtual-interfaces:discoverable", + "description": "os_compute_api:os-virtual-interfaces:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes", + "description": "os_compute_api:os-volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes:discoverable", + "description": "os_compute_api:os-volumes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:index", + "description": "os_compute_api:os-volumes-attachments:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:show", + "description": "os_compute_api:os-volumes-attachments:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:create", + "description": "os_compute_api:os-volumes-attachments:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:update", + "description": "os_compute_api:os-volumes-attachments:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:delete", + "description": "os_compute_api:os-volumes-attachments:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:discoverable", + "description": "os_compute_api:os-volumes-attachments:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-availability-zone:list", + "description": "os_compute_api:os-availability-zone:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-availability-zone:discoverable", + "description": "os_compute_api:os-availability-zone:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-availability-zone:detail", + "description": "os_compute_api:os-availability-zone:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-used-limits", + "description": "os_compute_api:os-used-limits action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-used-limits:discoverable", + "description": "os_compute_api:os-used-limits:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrations:index", + "description": "os_compute_api:os-migrations:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrations:discoverable", + "description": "os_compute_api:os-migrations:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:create", + "description": "os_compute_api:os-assisted-volume-snapshots:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete", + "description": "os_compute_api:os-assisted-volume-snapshots:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable", + "description": "os_compute_api:os-assisted-volume-snapshots:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-console-auth-tokens", + "description": "os_compute_api:os-console-auth-tokens action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-external-events:create", + "description": "os_compute_api:os-server-external-events:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + } + ], + "action_assignments": [ + { + "action": { + "name": "volume:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:create" + } + ] + }, + { + "action": { + "name": "volume:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete" + } + ] + }, + { + "action": { + "name": "volume:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get" + } + ] + }, + { + "action": { + "name": "volume:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_all" + } + ] + }, + { + "action": { + "name": "volume:get_volume_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_volume_metadata" + } + ] + }, + { + "action": { + "name": "volume:delete_volume_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete_volume_metadata" + } + ] + }, + { + "action": { + "name": "volume:update_volume_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_volume_metadata" + } + ] + }, + { + "action": { + "name": "volume:get_volume_admin_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_volume_admin_metadata" + } + ] + }, + { + "action": { + "name": "volume:update_volume_admin_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_volume_admin_metadata" + } + ] + }, + { + "action": { + "name": "volume:get_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_snapshot" + } + ] + }, + { + "action": { + "name": "volume:get_all_snapshots" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_all_snapshots" + } + ] + }, + { + "action": { + "name": "volume:create_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:create_snapshot" + } + ] + }, + { + "action": { + "name": "volume:delete_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete_snapshot" + } + ] + }, + { + "action": { + "name": "volume:update_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_snapshot" + } + ] + }, + { + "action": { + "name": "volume:extend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:extend" + } + ] + }, + { + "action": { + "name": "volume:update_readonly_flag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_readonly_flag" + } + ] + }, + { + "action": { + "name": "volume:retype" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:retype" + } + ] + }, + { + "action": { + "name": "volume:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update" + } + ] + }, + { + "action": { + "name": "volume_extension:types_manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:types_manage" + } + ] + }, + { + "action": { + "name": "volume_extension:types_extra_specs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:types_extra_specs" + } + ] + }, + { + "action": { + "name": "volume_extension:access_types_qos_specs_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:access_types_qos_specs_id" + } + ] + }, + { + "action": { + "name": "volume_extension:access_types_extra_specs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:access_types_extra_specs" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_access" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_access:addProjectAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_access:addProjectAccess" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_access:removeProjectAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_access:removeProjectAccess" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_encryption" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_encryption" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_encryption_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_encryption_metadata" + } + ] + }, + { + "action": { + "name": "volume_extension:extended_snapshot_attributes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:extended_snapshot_attributes" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_image_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_image_metadata" + } + ] + }, + { + "action": { + "name": "volume_extension:quotas:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quotas:show" + } + ] + }, + { + "action": { + "name": "volume_extension:quotas:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quotas:update" + } + ] + }, + { + "action": { + "name": "volume_extension:quotas:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quotas:delete" + } + ] + }, + { + "action": { + "name": "volume_extension:quota_classes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quota_classes" + } + ] + }, + { + "action": { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:reset_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:reset_status" + } + ] + }, + { + "action": { + "name": "volume_extension:snapshot_admin_actions:reset_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:snapshot_admin_actions:reset_status" + } + ] + }, + { + "action": { + "name": "volume_extension:backup_admin_actions:reset_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:backup_admin_actions:reset_status" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:force_delete" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:force_detach" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:force_detach" + } + ] + }, + { + "action": { + "name": "volume_extension:snapshot_admin_actions:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:snapshot_admin_actions:force_delete" + } + ] + }, + { + "action": { + "name": "volume_extension:backup_admin_actions:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:backup_admin_actions:force_delete" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:migrate_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_host_attribute" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_host_attribute" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_tenant_attribute" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_tenant_attribute" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_mig_status_attribute" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_mig_status_attribute" + } + ] + }, + { + "action": { + "name": "volume_extension:hosts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:hosts" + } + ] + }, + { + "action": { + "name": "volume_extension:services:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:services:index" + } + ] + }, + { + "action": { + "name": "volume_extension:services:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:services:update" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_manage" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_unmanage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_unmanage" + } + ] + }, + { + "action": { + "name": "volume_extension:capabilities" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:capabilities" + } + ] + }, + { + "action": { + "name": "volume:create_transfer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:create_transfer" + } + ] + }, + { + "action": { + "name": "volume:accept_transfer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:accept_transfer" + } + ] + }, + { + "action": { + "name": "volume:delete_transfer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete_transfer" + } + ] + }, + { + "action": { + "name": "volume:get_all_transfers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_all_transfers" + } + ] + }, + { + "action": { + "name": "volume_extension:replication:promote" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:replication:promote" + } + ] + }, + { + "action": { + "name": "volume_extension:replication:reenable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:replication:reenable" + } + ] + }, + { + "action": { + "name": "volume:enable_replication" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:enable_replication" + } + ] + }, + { + "action": { + "name": "volume:disable_replication" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:disable_replication" + } + ] + }, + { + "action": { + "name": "volume:failover_replication" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:failover_replication" + } + ] + }, + { + "action": { + "name": "volume:list_replication_targets" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:list_replication_targets" + } + ] + }, + { + "action": { + "name": "backup:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:create" + } + ] + }, + { + "action": { + "name": "backup:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:delete" + } + ] + }, + { + "action": { + "name": "backup:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:get" + } + ] + }, + { + "action": { + "name": "backup:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:get_all" + } + ] + }, + { + "action": { + "name": "backup:restore" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:restore" + } + ] + }, + { + "action": { + "name": "backup:backup-import" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:backup-import" + } + ] + }, + { + "action": { + "name": "backup:backup-export" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:backup-export" + } + ] + }, + { + "action": { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status" + } + ] + }, + { + "action": { + "name": "snapshot_extension:snapshot_manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "snapshot_extension:snapshot_manage" + } + ] + }, + { + "action": { + "name": "snapshot_extension:snapshot_unmanage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "snapshot_extension:snapshot_unmanage" + } + ] + }, + { + "action": { + "name": "consistencygroup:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:create" + } + ] + }, + { + "action": { + "name": "consistencygroup:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:delete" + } + ] + }, + { + "action": { + "name": "consistencygroup:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:update" + } + ] + }, + { + "action": { + "name": "consistencygroup:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get" + } + ] + }, + { + "action": { + "name": "consistencygroup:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get_all" + } + ] + }, + { + "action": { + "name": "consistencygroup:create_cgsnapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:create_cgsnapshot" + } + ] + }, + { + "action": { + "name": "consistencygroup:delete_cgsnapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:delete_cgsnapshot" + } + ] + }, + { + "action": { + "name": "consistencygroup:get_cgsnapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get_cgsnapshot" + } + ] + }, + { + "action": { + "name": "consistencygroup:get_all_cgsnapshots" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get_all_cgsnapshots" + } + ] + }, + { + "action": { + "name": "scheduler_extension:scheduler_stats:get_pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "scheduler_extension:scheduler_stats:get_pools" + } + ] + }, + { + "action": { + "name": "add_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_image" + } + ] + }, + { + "action": { + "name": "delete_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_image" + } + ] + }, + { + "action": { + "name": "get_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_image" + } + ] + }, + { + "action": { + "name": "get_images" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_images" + } + ] + }, + { + "action": { + "name": "modify_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_image" + } + ] + }, + { + "action": { + "name": "publicize_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "publicize_image" + } + ] + }, + { + "action": { + "name": "communitize_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "communitize_image" + } + ] + }, + { + "action": { + "name": "copy_from" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "copy_from" + } + ] + }, + { + "action": { + "name": "download_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "download_image" + } + ] + }, + { + "action": { + "name": "upload_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "upload_image" + } + ] + }, + { + "action": { + "name": "delete_image_location" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_image_location" + } + ] + }, + { + "action": { + "name": "get_image_location" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_image_location" + } + ] + }, + { + "action": { + "name": "set_image_location" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "set_image_location" + } + ] + }, + { + "action": { + "name": "add_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_member" + } + ] + }, + { + "action": { + "name": "delete_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_member" + } + ] + }, + { + "action": { + "name": "get_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_member" + } + ] + }, + { + "action": { + "name": "get_members" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_members" + } + ] + }, + { + "action": { + "name": "modify_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_member" + } + ] + }, + { + "action": { + "name": "manage_image_cache" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "manage_image_cache" + } + ] + }, + { + "action": { + "name": "get_task" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_task" + } + ] + }, + { + "action": { + "name": "get_tasks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_tasks" + } + ] + }, + { + "action": { + "name": "add_task" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_task" + } + ] + }, + { + "action": { + "name": "modify_task" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_task" + } + ] + }, + { + "action": { + "name": "tasks_api_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "tasks_api_access" + } + ] + }, + { + "action": { + "name": "deactivate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "deactivate" + } + ] + }, + { + "action": { + "name": "reactivate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "reactivate" + } + ] + }, + { + "action": { + "name": "get_metadef_namespace" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_namespace" + } + ] + }, + { + "action": { + "name": "get_metadef_namespaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_namespaces" + } + ] + }, + { + "action": { + "name": "modify_metadef_namespace" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_namespace" + } + ] + }, + { + "action": { + "name": "add_metadef_namespace" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_namespace" + } + ] + }, + { + "action": { + "name": "get_metadef_object" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_object" + } + ] + }, + { + "action": { + "name": "get_metadef_objects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_objects" + } + ] + }, + { + "action": { + "name": "modify_metadef_object" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_object" + } + ] + }, + { + "action": { + "name": "add_metadef_object" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_object" + } + ] + }, + { + "action": { + "name": "list_metadef_resource_types" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "list_metadef_resource_types" + } + ] + }, + { + "action": { + "name": "get_metadef_resource_type" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_resource_type" + } + ] + }, + { + "action": { + "name": "add_metadef_resource_type_association" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_resource_type_association" + } + ] + }, + { + "action": { + "name": "get_metadef_property" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_property" + } + ] + }, + { + "action": { + "name": "get_metadef_properties" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_properties" + } + ] + }, + { + "action": { + "name": "modify_metadef_property" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_property" + } + ] + }, + { + "action": { + "name": "add_metadef_property" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_property" + } + ] + }, + { + "action": { + "name": "get_metadef_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_tag" + } + ] + }, + { + "action": { + "name": "get_metadef_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_tags" + } + ] + }, + { + "action": { + "name": "modify_metadef_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_tag" + } + ] + }, + { + "action": { + "name": "add_metadef_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_tag" + } + ] + }, + { + "action": { + "name": "add_metadef_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_tags" + } + ] + }, + { + "action": { + "name": "identity:get_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_region" + } + ] + }, + { + "action": { + "name": "identity:list_regions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_regions" + } + ] + }, + { + "action": { + "name": "identity:create_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_region" + } + ] + }, + { + "action": { + "name": "identity:update_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_region" + } + ] + }, + { + "action": { + "name": "identity:delete_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_region" + } + ] + }, + { + "action": { + "name": "identity:get_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_service" + } + ] + }, + { + "action": { + "name": "identity:list_services" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_services" + } + ] + }, + { + "action": { + "name": "identity:create_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_service" + } + ] + }, + { + "action": { + "name": "identity:update_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_service" + } + ] + }, + { + "action": { + "name": "identity:delete_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_service" + } + ] + }, + { + "action": { + "name": "identity:get_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_endpoint" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints" + } + ] + }, + { + "action": { + "name": "identity:create_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_endpoint" + } + ] + }, + { + "action": { + "name": "identity:update_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_endpoint" + } + ] + }, + { + "action": { + "name": "identity:delete_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_endpoint" + } + ] + }, + { + "action": { + "name": "identity:get_registered_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_registered_limit" + } + ] + }, + { + "action": { + "name": "identity:list_registered_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_registered_limits" + } + ] + }, + { + "action": { + "name": "identity:create_registered_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_registered_limits" + } + ] + }, + { + "action": { + "name": "identity:update_registered_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_registered_limits" + } + ] + }, + { + "action": { + "name": "identity:delete_registered_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_registered_limit" + } + ] + }, + { + "action": { + "name": "identity:get_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_limit" + } + ] + }, + { + "action": { + "name": "identity:list_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_limits" + } + ] + }, + { + "action": { + "name": "identity:create_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_limits" + } + ] + }, + { + "action": { + "name": "identity:update_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_limits" + } + ] + }, + { + "action": { + "name": "identity:delete_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_limit" + } + ] + }, + { + "action": { + "name": "identity:get_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain" + } + ] + }, + { + "action": { + "name": "identity:list_domains" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_domains" + } + ] + }, + { + "action": { + "name": "identity:create_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_domain" + } + ] + }, + { + "action": { + "name": "identity:update_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_domain" + } + ] + }, + { + "action": { + "name": "identity:delete_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_domain" + } + ] + }, + { + "action": { + "name": "admin_and_matching_target_project_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_target_project_domain_id" + } + ] + }, + { + "action": { + "name": "admin_and_matching_project_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_project_domain_id" + } + ] + }, + { + "action": { + "name": "identity:get_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_project" + } + ] + }, + { + "action": { + "name": "identity:list_projects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects" + } + ] + }, + { + "action": { + "name": "identity:list_user_projects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_user_projects" + } + ] + }, + { + "action": { + "name": "identity:create_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_project" + } + ] + }, + { + "action": { + "name": "identity:update_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_project" + } + ] + }, + { + "action": { + "name": "identity:delete_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_project" + } + ] + }, + { + "action": { + "name": "identity:create_project_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_project_tag" + } + ] + }, + { + "action": { + "name": "identity:delete_project_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_project_tag" + } + ] + }, + { + "action": { + "name": "identity:get_project_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_project_tag" + } + ] + }, + { + "action": { + "name": "identity:list_project_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_project_tags" + } + ] + }, + { + "action": { + "name": "identity:delete_project_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_project_tags" + } + ] + }, + { + "action": { + "name": "identity:update_project_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_project_tags" + } + ] + }, + { + "action": { + "name": "admin_and_matching_target_user_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_target_user_domain_id" + } + ] + }, + { + "action": { + "name": "admin_and_matching_user_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_user_domain_id" + } + ] + }, + { + "action": { + "name": "identity:get_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_user" + } + ] + }, + { + "action": { + "name": "identity:list_users" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_users" + } + ] + }, + { + "action": { + "name": "identity:create_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_user" + } + ] + }, + { + "action": { + "name": "identity:update_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_user" + } + ] + }, + { + "action": { + "name": "identity:delete_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_user" + } + ] + }, + { + "action": { + "name": "admin_and_matching_target_group_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_target_group_domain_id" + } + ] + }, + { + "action": { + "name": "admin_and_matching_group_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_group_domain_id" + } + ] + }, + { + "action": { + "name": "identity:get_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_group" + } + ] + }, + { + "action": { + "name": "identity:list_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_groups" + } + ] + }, + { + "action": { + "name": "identity:list_groups_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_groups_for_user" + } + ] + }, + { + "action": { + "name": "identity:create_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_group" + } + ] + }, + { + "action": { + "name": "identity:update_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_group" + } + ] + }, + { + "action": { + "name": "identity:delete_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_group" + } + ] + }, + { + "action": { + "name": "identity:list_users_in_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_users_in_group" + } + ] + }, + { + "action": { + "name": "identity:remove_user_from_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:remove_user_from_group" + } + ] + }, + { + "action": { + "name": "identity:check_user_in_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_user_in_group" + } + ] + }, + { + "action": { + "name": "identity:add_user_to_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:add_user_to_group" + } + ] + }, + { + "action": { + "name": "identity:get_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_credential" + } + ] + }, + { + "action": { + "name": "identity:list_credentials" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_credentials" + } + ] + }, + { + "action": { + "name": "identity:create_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_credential" + } + ] + }, + { + "action": { + "name": "identity:update_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_credential" + } + ] + }, + { + "action": { + "name": "identity:delete_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_credential" + } + ] + }, + { + "action": { + "name": "identity:ec2_get_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_get_credential" + } + ] + }, + { + "action": { + "name": "identity:ec2_list_credentials" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_list_credentials" + } + ] + }, + { + "action": { + "name": "identity:ec2_create_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_create_credential" + } + ] + }, + { + "action": { + "name": "identity:ec2_delete_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_delete_credential" + } + ] + }, + { + "action": { + "name": "identity:get_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_role" + } + ] + }, + { + "action": { + "name": "identity:list_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_roles" + } + ] + }, + { + "action": { + "name": "identity:create_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_role" + } + ] + }, + { + "action": { + "name": "identity:update_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_role" + } + ] + }, + { + "action": { + "name": "identity:delete_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_role" + } + ] + }, + { + "action": { + "name": "identity:get_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain_role" + } + ] + }, + { + "action": { + "name": "identity:list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_domain_roles" + } + ] + }, + { + "action": { + "name": "identity:create_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_domain_role" + } + ] + }, + { + "action": { + "name": "identity:update_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_domain_role" + } + ] + }, + { + "action": { + "name": "identity:delete_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_domain_role" + } + ] + }, + { + "action": { + "name": "domain_admin_matches_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_matches_domain_role" + } + ] + }, + { + "action": { + "name": "get_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_domain_roles" + } + ] + }, + { + "action": { + "name": "domain_admin_matches_target_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_matches_target_domain_role" + } + ] + }, + { + "action": { + "name": "project_admin_matches_target_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_matches_target_domain_role" + } + ] + }, + { + "action": { + "name": "list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "list_domain_roles" + } + ] + }, + { + "action": { + "name": "domain_admin_matches_filter_on_list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_matches_filter_on_list_domain_roles" + } + ] + }, + { + "action": { + "name": "project_admin_matches_filter_on_list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_matches_filter_on_list_domain_roles" + } + ] + }, + { + "action": { + "name": "admin_and_matching_prior_role_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_prior_role_domain_id" + } + ] + }, + { + "action": { + "name": "implied_role_matches_prior_role_domain_or_global" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "implied_role_matches_prior_role_domain_or_global" + } + ] + }, + { + "action": { + "name": "identity:get_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_implied_role" + } + ] + }, + { + "action": { + "name": "identity:list_implied_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_implied_roles" + } + ] + }, + { + "action": { + "name": "identity:create_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_implied_role" + } + ] + }, + { + "action": { + "name": "identity:delete_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_implied_role" + } + ] + }, + { + "action": { + "name": "identity:list_role_inference_rules" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_role_inference_rules" + } + ] + }, + { + "action": { + "name": "identity:check_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_implied_role" + } + ] + }, + { + "action": { + "name": "identity:list_system_grants_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_system_grants_for_user" + } + ] + }, + { + "action": { + "name": "identity:check_system_grant_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_system_grant_for_user" + } + ] + }, + { + "action": { + "name": "identity:create_system_grant_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_system_grant_for_user" + } + ] + }, + { + "action": { + "name": "identity:revoke_system_grant_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_system_grant_for_user" + } + ] + }, + { + "action": { + "name": "identity:list_system_grants_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_system_grants_for_group" + } + ] + }, + { + "action": { + "name": "identity:check_system_grant_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_system_grant_for_group" + } + ] + }, + { + "action": { + "name": "identity:create_system_grant_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_system_grant_for_group" + } + ] + }, + { + "action": { + "name": "identity:revoke_system_grant_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_system_grant_for_group" + } + ] + }, + { + "action": { + "name": "identity:check_grant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_grant" + } + ] + }, + { + "action": { + "name": "identity:list_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_grants" + } + ] + }, + { + "action": { + "name": "identity:create_grant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_grant" + } + ] + }, + { + "action": { + "name": "identity:revoke_grant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_grant" + } + ] + }, + { + "action": { + "name": "domain_admin_for_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_for_global_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_global_role_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_for_domain_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_domain_role_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_grant_match" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_grant_match" + } + ] + }, + { + "action": { + "name": "project_admin_for_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_grants" + } + ] + }, + { + "action": { + "name": "project_admin_for_global_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_global_role_grants" + } + ] + }, + { + "action": { + "name": "project_admin_for_domain_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_domain_role_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_for_list_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_list_grants" + } + ] + }, + { + "action": { + "name": "project_admin_for_list_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_list_grants" + } + ] + }, + { + "action": { + "name": "admin_on_domain_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_on_domain_filter" + } + ] + }, + { + "action": { + "name": "admin_on_project_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_on_project_filter" + } + ] + }, + { + "action": { + "name": "admin_on_domain_of_project_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_on_domain_of_project_filter" + } + ] + }, + { + "action": { + "name": "identity:list_role_assignments" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_role_assignments" + } + ] + }, + { + "action": { + "name": "identity:list_role_assignments_for_tree" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_role_assignments_for_tree" + } + ] + }, + { + "action": { + "name": "identity:get_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_policy" + } + ] + }, + { + "action": { + "name": "identity:list_policies" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_policies" + } + ] + }, + { + "action": { + "name": "identity:create_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy" + } + ] + }, + { + "action": { + "name": "identity:update_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_policy" + } + ] + }, + { + "action": { + "name": "identity:delete_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy" + } + ] + }, + { + "action": { + "name": "identity:check_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_token" + } + ] + }, + { + "action": { + "name": "identity:validate_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:validate_token" + } + ] + }, + { + "action": { + "name": "identity:validate_token_head" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:validate_token_head" + } + ] + }, + { + "action": { + "name": "identity:revocation_list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revocation_list" + } + ] + }, + { + "action": { + "name": "identity:revoke_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_token" + } + ] + }, + { + "action": { + "name": "identity:create_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_trust" + } + ] + }, + { + "action": { + "name": "identity:list_trusts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_trusts" + } + ] + }, + { + "action": { + "name": "identity:list_roles_for_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_roles_for_trust" + } + ] + }, + { + "action": { + "name": "identity:get_role_for_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_role_for_trust" + } + ] + }, + { + "action": { + "name": "identity:delete_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_trust" + } + ] + }, + { + "action": { + "name": "identity:get_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_trust" + } + ] + }, + { + "action": { + "name": "identity:create_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_consumer" + } + ] + }, + { + "action": { + "name": "identity:get_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_consumer" + } + ] + }, + { + "action": { + "name": "identity:list_consumers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_consumers" + } + ] + }, + { + "action": { + "name": "identity:delete_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_consumer" + } + ] + }, + { + "action": { + "name": "identity:update_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_consumer" + } + ] + }, + { + "action": { + "name": "identity:authorize_request_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:authorize_request_token" + } + ] + }, + { + "action": { + "name": "identity:list_access_token_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_access_token_roles" + } + ] + }, + { + "action": { + "name": "identity:get_access_token_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_access_token_role" + } + ] + }, + { + "action": { + "name": "identity:list_access_tokens" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_access_tokens" + } + ] + }, + { + "action": { + "name": "identity:get_access_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_access_token" + } + ] + }, + { + "action": { + "name": "identity:delete_access_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_access_token" + } + ] + }, + { + "action": { + "name": "identity:list_projects_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:add_endpoint_to_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:add_endpoint_to_project" + } + ] + }, + { + "action": { + "name": "identity:check_endpoint_in_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_endpoint_in_project" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints_for_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints_for_project" + } + ] + }, + { + "action": { + "name": "identity:remove_endpoint_from_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:remove_endpoint_from_project" + } + ] + }, + { + "action": { + "name": "identity:create_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:list_endpoint_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoint_groups" + } + ] + }, + { + "action": { + "name": "identity:get_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:update_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:delete_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:list_projects_associated_with_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects_associated_with_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints_associated_with_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints_associated_with_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:get_endpoint_group_in_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_endpoint_group_in_project" + } + ] + }, + { + "action": { + "name": "identity:list_endpoint_groups_for_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoint_groups_for_project" + } + ] + }, + { + "action": { + "name": "identity:add_endpoint_group_to_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:add_endpoint_group_to_project" + } + ] + }, + { + "action": { + "name": "identity:remove_endpoint_group_from_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:remove_endpoint_group_from_project" + } + ] + }, + { + "action": { + "name": "identity:create_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:list_identity_providers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_identity_providers" + } + ] + }, + { + "action": { + "name": "identity:get_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:update_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:delete_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:create_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_protocol" + } + ] + }, + { + "action": { + "name": "identity:update_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_protocol" + } + ] + }, + { + "action": { + "name": "identity:get_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_protocol" + } + ] + }, + { + "action": { + "name": "identity:list_protocols" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_protocols" + } + ] + }, + { + "action": { + "name": "identity:delete_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_protocol" + } + ] + }, + { + "action": { + "name": "identity:create_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_mapping" + } + ] + }, + { + "action": { + "name": "identity:get_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_mapping" + } + ] + }, + { + "action": { + "name": "identity:list_mappings" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_mappings" + } + ] + }, + { + "action": { + "name": "identity:delete_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_mapping" + } + ] + }, + { + "action": { + "name": "identity:update_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_mapping" + } + ] + }, + { + "action": { + "name": "identity:create_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_service_provider" + } + ] + }, + { + "action": { + "name": "identity:list_service_providers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_service_providers" + } + ] + }, + { + "action": { + "name": "identity:get_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_service_provider" + } + ] + }, + { + "action": { + "name": "identity:update_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_service_provider" + } + ] + }, + { + "action": { + "name": "identity:delete_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_service_provider" + } + ] + }, + { + "action": { + "name": "identity:get_auth_catalog" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_catalog" + } + ] + }, + { + "action": { + "name": "identity:get_auth_projects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_projects" + } + ] + }, + { + "action": { + "name": "identity:get_auth_domains" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_domains" + } + ] + }, + { + "action": { + "name": "identity:get_auth_system" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_system" + } + ] + }, + { + "action": { + "name": "identity:list_projects_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects_for_user" + } + ] + }, + { + "action": { + "name": "identity:list_domains_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_domains_for_user" + } + ] + }, + { + "action": { + "name": "identity:list_revoke_events" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_revoke_events" + } + ] + }, + { + "action": { + "name": "identity:create_policy_association_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy_association_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:check_policy_association_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_policy_association_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:delete_policy_association_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy_association_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:create_policy_association_for_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy_association_for_service" + } + ] + }, + { + "action": { + "name": "identity:check_policy_association_for_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_policy_association_for_service" + } + ] + }, + { + "action": { + "name": "identity:delete_policy_association_for_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy_association_for_service" + } + ] + }, + { + "action": { + "name": "identity:create_policy_association_for_region_and_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy_association_for_region_and_service" + } + ] + }, + { + "action": { + "name": "identity:check_policy_association_for_region_and_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_policy_association_for_region_and_service" + } + ] + }, + { + "action": { + "name": "identity:delete_policy_association_for_region_and_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy_association_for_region_and_service" + } + ] + }, + { + "action": { + "name": "identity:get_policy_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_policy_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints_for_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints_for_policy" + } + ] + }, + { + "action": { + "name": "identity:create_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_domain_config" + } + ] + }, + { + "action": { + "name": "identity:get_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain_config" + } + ] + }, + { + "action": { + "name": "identity:get_security_compliance_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_security_compliance_domain_config" + } + ] + }, + { + "action": { + "name": "identity:update_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_domain_config" + } + ] + }, + { + "action": { + "name": "identity:delete_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_domain_config" + } + ] + }, + { + "action": { + "name": "identity:get_domain_config_default" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain_config_default" + } + ] + }, + { + "action": { + "name": "identity:get_application_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_application_credential" + } + ] + }, + { + "action": { + "name": "identity:list_application_credentials" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_application_credentials" + } + ] + }, + { + "action": { + "name": "identity:create_application_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_application_credential" + } + ] + }, + { + "action": { + "name": "identity:delete_application_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_application_credential" + } + ] + }, + { + "action": { + "name": "create_subnet" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_subnet" + } + ] + }, + { + "action": { + "name": "create_subnet:segment_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_subnet:segment_id" + } + ] + }, + { + "action": { + "name": "create_subnet:service_types" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_subnet:service_types" + } + ] + }, + { + "action": { + "name": "get_subnet" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_subnet" + } + ] + }, + { + "action": { + "name": "get_subnet:segment_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_subnet:segment_id" + } + ] + }, + { + "action": { + "name": "update_subnet" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_subnet" + } + ] + }, + { + "action": { + "name": "update_subnet:service_types" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_subnet:service_types" + } + ] + }, + { + "action": { + "name": "delete_subnet" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_subnet" + } + ] + }, + { + "action": { + "name": "create_subnetpool" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_subnetpool" + } + ] + }, + { + "action": { + "name": "create_subnetpool:shared" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_subnetpool:shared" + } + ] + }, + { + "action": { + "name": "create_subnetpool:is_default" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_subnetpool:is_default" + } + ] + }, + { + "action": { + "name": "get_subnetpool" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_subnetpool" + } + ] + }, + { + "action": { + "name": "update_subnetpool" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_subnetpool" + } + ] + }, + { + "action": { + "name": "update_subnetpool:is_default" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_subnetpool:is_default" + } + ] + }, + { + "action": { + "name": "delete_subnetpool" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_subnetpool" + } + ] + }, + { + "action": { + "name": "create_address_scope" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_address_scope" + } + ] + }, + { + "action": { + "name": "create_address_scope:shared" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_address_scope:shared" + } + ] + }, + { + "action": { + "name": "get_address_scope" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_address_scope" + } + ] + }, + { + "action": { + "name": "update_address_scope" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_address_scope" + } + ] + }, + { + "action": { + "name": "update_address_scope:shared" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_address_scope:shared" + } + ] + }, + { + "action": { + "name": "delete_address_scope" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_address_scope" + } + ] + }, + { + "action": { + "name": "create_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network" + } + ] + }, + { + "action": { + "name": "get_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network" + } + ] + }, + { + "action": { + "name": "get_network:router:external" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network:router:external" + } + ] + }, + { + "action": { + "name": "get_network:segments" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network:segments" + } + ] + }, + { + "action": { + "name": "get_network:provider:network_type" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network:provider:network_type" + } + ] + }, + { + "action": { + "name": "get_network:provider:physical_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network:provider:physical_network" + } + ] + }, + { + "action": { + "name": "get_network:provider:segmentation_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network:provider:segmentation_id" + } + ] + }, + { + "action": { + "name": "get_network:queue_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network:queue_id" + } + ] + }, + { + "action": { + "name": "get_network_ip_availabilities" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network_ip_availabilities" + } + ] + }, + { + "action": { + "name": "get_network_ip_availability" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network_ip_availability" + } + ] + }, + { + "action": { + "name": "create_network:shared" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network:shared" + } + ] + }, + { + "action": { + "name": "create_network:router:external" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network:router:external" + } + ] + }, + { + "action": { + "name": "create_network:is_default" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network:is_default" + } + ] + }, + { + "action": { + "name": "create_network:segments" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network:segments" + } + ] + }, + { + "action": { + "name": "create_network:provider:network_type" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network:provider:network_type" + } + ] + }, + { + "action": { + "name": "create_network:provider:physical_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network:provider:physical_network" + } + ] + }, + { + "action": { + "name": "create_network:provider:segmentation_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network:provider:segmentation_id" + } + ] + }, + { + "action": { + "name": "update_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network" + } + ] + }, + { + "action": { + "name": "update_network:segments" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network:segments" + } + ] + }, + { + "action": { + "name": "update_network:shared" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network:shared" + } + ] + }, + { + "action": { + "name": "update_network:provider:network_type" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network:provider:network_type" + } + ] + }, + { + "action": { + "name": "update_network:provider:physical_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network:provider:physical_network" + } + ] + }, + { + "action": { + "name": "update_network:provider:segmentation_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network:provider:segmentation_id" + } + ] + }, + { + "action": { + "name": "update_network:router:external" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network:router:external" + } + ] + }, + { + "action": { + "name": "delete_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_network" + } + ] + }, + { + "action": { + "name": "create_segment" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_segment" + } + ] + }, + { + "action": { + "name": "get_segment" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_segment" + } + ] + }, + { + "action": { + "name": "update_segment" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_segment" + } + ] + }, + { + "action": { + "name": "delete_segment" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_segment" + } + ] + }, + { + "action": { + "name": "network_device" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network_device" + } + ] + }, + { + "action": { + "name": "create_port" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port" + } + ] + }, + { + "action": { + "name": "create_port:device_owner" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:device_owner" + } + ] + }, + { + "action": { + "name": "create_port:mac_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:mac_address" + } + ] + }, + { + "action": { + "name": "create_port:fixed_ips:ip_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:fixed_ips:ip_address" + } + ] + }, + { + "action": { + "name": "create_port:fixed_ips:subnet_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:fixed_ips:subnet_id" + } + ] + }, + { + "action": { + "name": "create_port:port_security_enabled" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:port_security_enabled" + } + ] + }, + { + "action": { + "name": "create_port:binding:host_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:binding:host_id" + } + ] + }, + { + "action": { + "name": "create_port:binding:profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:binding:profile" + } + ] + }, + { + "action": { + "name": "create_port:mac_learning_enabled" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:mac_learning_enabled" + } + ] + }, + { + "action": { + "name": "create_port:allowed_address_pairs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_port:allowed_address_pairs" + } + ] + }, + { + "action": { + "name": "get_port" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_port" + } + ] + }, + { + "action": { + "name": "get_port:queue_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_port:queue_id" + } + ] + }, + { + "action": { + "name": "get_port:binding:vif_type" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_port:binding:vif_type" + } + ] + }, + { + "action": { + "name": "get_port:binding:vif_details" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_port:binding:vif_details" + } + ] + }, + { + "action": { + "name": "get_port:binding:host_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_port:binding:host_id" + } + ] + }, + { + "action": { + "name": "get_port:binding:profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_port:binding:profile" + } + ] + }, + { + "action": { + "name": "update_port" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port" + } + ] + }, + { + "action": { + "name": "update_port:device_owner" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:device_owner" + } + ] + }, + { + "action": { + "name": "update_port:mac_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:mac_address" + } + ] + }, + { + "action": { + "name": "update_port:fixed_ips:ip_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:fixed_ips:ip_address" + } + ] + }, + { + "action": { + "name": "update_port:fixed_ips:subnet_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:fixed_ips:subnet_id" + } + ] + }, + { + "action": { + "name": "update_port:port_security_enabled" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:port_security_enabled" + } + ] + }, + { + "action": { + "name": "update_port:binding:host_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:binding:host_id" + } + ] + }, + { + "action": { + "name": "update_port:binding:profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:binding:profile" + } + ] + }, + { + "action": { + "name": "update_port:mac_learning_enabled" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:mac_learning_enabled" + } + ] + }, + { + "action": { + "name": "update_port:allowed_address_pairs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:allowed_address_pairs" + } + ] + }, + { + "action": { + "name": "update_port:data_plane_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_port:data_plane_status" + } + ] + }, + { + "action": { + "name": "delete_port" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_port" + } + ] + }, + { + "action": { + "name": "get_router:ha" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_router:ha" + } + ] + }, + { + "action": { + "name": "create_router" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_router" + } + ] + }, + { + "action": { + "name": "create_router:external_gateway_info:enable_snat" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_router:external_gateway_info:enable_snat" + } + ] + }, + { + "action": { + "name": "create_router:distributed" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_router:distributed" + } + ] + }, + { + "action": { + "name": "create_router:ha" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_router:ha" + } + ] + }, + { + "action": { + "name": "get_router" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_router" + } + ] + }, + { + "action": { + "name": "get_router:distributed" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_router:distributed" + } + ] + }, + { + "action": { + "name": "update_router" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_router" + } + ] + }, + { + "action": { + "name": "update_router:external_gateway_info" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_router:external_gateway_info" + } + ] + }, + { + "action": { + "name": "update_router:external_gateway_info:network_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_router:external_gateway_info:network_id" + } + ] + }, + { + "action": { + "name": "update_router:external_gateway_info:enable_snat" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_router:external_gateway_info:enable_snat" + } + ] + }, + { + "action": { + "name": "update_router:distributed" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_router:distributed" + } + ] + }, + { + "action": { + "name": "update_router:ha" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_router:ha" + } + ] + }, + { + "action": { + "name": "delete_router" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_router" + } + ] + }, + { + "action": { + "name": "add_router_interface" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_router_interface" + } + ] + }, + { + "action": { + "name": "remove_router_interface" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "remove_router_interface" + } + ] + }, + { + "action": { + "name": "create_router:external_gateway_info:external_fixed_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_router:external_gateway_info:external_fixed_ips" + } + ] + }, + { + "action": { + "name": "update_router:external_gateway_info:external_fixed_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_router:external_gateway_info:external_fixed_ips" + } + ] + }, + { + "action": { + "name": "create_qos_queue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_qos_queue" + } + ] + }, + { + "action": { + "name": "get_qos_queue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_qos_queue" + } + ] + }, + { + "action": { + "name": "update_agent" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_agent" + } + ] + }, + { + "action": { + "name": "delete_agent" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_agent" + } + ] + }, + { + "action": { + "name": "get_agent" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_agent" + } + ] + }, + { + "action": { + "name": "create_dhcp-network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_dhcp-network" + } + ] + }, + { + "action": { + "name": "delete_dhcp-network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_dhcp-network" + } + ] + }, + { + "action": { + "name": "get_dhcp-networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_dhcp-networks" + } + ] + }, + { + "action": { + "name": "create_l3-router" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_l3-router" + } + ] + }, + { + "action": { + "name": "delete_l3-router" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_l3-router" + } + ] + }, + { + "action": { + "name": "get_l3-routers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_l3-routers" + } + ] + }, + { + "action": { + "name": "get_dhcp-agents" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_dhcp-agents" + } + ] + }, + { + "action": { + "name": "get_l3-agents" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_l3-agents" + } + ] + }, + { + "action": { + "name": "get_loadbalancer-agent" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_loadbalancer-agent" + } + ] + }, + { + "action": { + "name": "get_loadbalancer-pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_loadbalancer-pools" + } + ] + }, + { + "action": { + "name": "get_agent-loadbalancers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_agent-loadbalancers" + } + ] + }, + { + "action": { + "name": "get_loadbalancer-hosting-agent" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_loadbalancer-hosting-agent" + } + ] + }, + { + "action": { + "name": "create_floatingip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_floatingip" + } + ] + }, + { + "action": { + "name": "create_floatingip:floating_ip_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_floatingip:floating_ip_address" + } + ] + }, + { + "action": { + "name": "update_floatingip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_floatingip" + } + ] + }, + { + "action": { + "name": "delete_floatingip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_floatingip" + } + ] + }, + { + "action": { + "name": "get_floatingip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_floatingip" + } + ] + }, + { + "action": { + "name": "create_network_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_network_profile" + } + ] + }, + { + "action": { + "name": "update_network_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_network_profile" + } + ] + }, + { + "action": { + "name": "delete_network_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_network_profile" + } + ] + }, + { + "action": { + "name": "get_network_profiles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network_profiles" + } + ] + }, + { + "action": { + "name": "get_network_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_network_profile" + } + ] + }, + { + "action": { + "name": "update_policy_profiles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_policy_profiles" + } + ] + }, + { + "action": { + "name": "get_policy_profiles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_policy_profiles" + } + ] + }, + { + "action": { + "name": "get_policy_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_policy_profile" + } + ] + }, + { + "action": { + "name": "create_metering_label" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_metering_label" + } + ] + }, + { + "action": { + "name": "delete_metering_label" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_metering_label" + } + ] + }, + { + "action": { + "name": "get_metering_label" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metering_label" + } + ] + }, + { + "action": { + "name": "create_metering_label_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_metering_label_rule" + } + ] + }, + { + "action": { + "name": "delete_metering_label_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_metering_label_rule" + } + ] + }, + { + "action": { + "name": "get_metering_label_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metering_label_rule" + } + ] + }, + { + "action": { + "name": "get_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_service_provider" + } + ] + }, + { + "action": { + "name": "get_lsn" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_lsn" + } + ] + }, + { + "action": { + "name": "create_lsn" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_lsn" + } + ] + }, + { + "action": { + "name": "create_flavor" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_flavor" + } + ] + }, + { + "action": { + "name": "update_flavor" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_flavor" + } + ] + }, + { + "action": { + "name": "delete_flavor" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_flavor" + } + ] + }, + { + "action": { + "name": "get_flavors" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_flavors" + } + ] + }, + { + "action": { + "name": "get_flavor" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_flavor" + } + ] + }, + { + "action": { + "name": "create_service_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_service_profile" + } + ] + }, + { + "action": { + "name": "update_service_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_service_profile" + } + ] + }, + { + "action": { + "name": "delete_service_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_service_profile" + } + ] + }, + { + "action": { + "name": "get_service_profiles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_service_profiles" + } + ] + }, + { + "action": { + "name": "get_service_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_service_profile" + } + ] + }, + { + "action": { + "name": "get_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_policy" + } + ] + }, + { + "action": { + "name": "create_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_policy" + } + ] + }, + { + "action": { + "name": "update_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_policy" + } + ] + }, + { + "action": { + "name": "delete_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_policy" + } + ] + }, + { + "action": { + "name": "get_policy_bandwidth_limit_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_policy_bandwidth_limit_rule" + } + ] + }, + { + "action": { + "name": "create_policy_bandwidth_limit_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_policy_bandwidth_limit_rule" + } + ] + }, + { + "action": { + "name": "delete_policy_bandwidth_limit_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_policy_bandwidth_limit_rule" + } + ] + }, + { + "action": { + "name": "update_policy_bandwidth_limit_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_policy_bandwidth_limit_rule" + } + ] + }, + { + "action": { + "name": "get_policy_dscp_marking_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_policy_dscp_marking_rule" + } + ] + }, + { + "action": { + "name": "create_policy_dscp_marking_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_policy_dscp_marking_rule" + } + ] + }, + { + "action": { + "name": "delete_policy_dscp_marking_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_policy_dscp_marking_rule" + } + ] + }, + { + "action": { + "name": "update_policy_dscp_marking_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_policy_dscp_marking_rule" + } + ] + }, + { + "action": { + "name": "get_rule_type" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_rule_type" + } + ] + }, + { + "action": { + "name": "get_policy_minimum_bandwidth_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_policy_minimum_bandwidth_rule" + } + ] + }, + { + "action": { + "name": "create_policy_minimum_bandwidth_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_policy_minimum_bandwidth_rule" + } + ] + }, + { + "action": { + "name": "delete_policy_minimum_bandwidth_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_policy_minimum_bandwidth_rule" + } + ] + }, + { + "action": { + "name": "update_policy_minimum_bandwidth_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_policy_minimum_bandwidth_rule" + } + ] + }, + { + "action": { + "name": "restrict_wildcard" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "restrict_wildcard" + } + ] + }, + { + "action": { + "name": "create_rbac_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_rbac_policy" + } + ] + }, + { + "action": { + "name": "create_rbac_policy:target_tenant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_rbac_policy:target_tenant" + } + ] + }, + { + "action": { + "name": "update_rbac_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_rbac_policy" + } + ] + }, + { + "action": { + "name": "update_rbac_policy:target_tenant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_rbac_policy:target_tenant" + } + ] + }, + { + "action": { + "name": "get_rbac_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_rbac_policy" + } + ] + }, + { + "action": { + "name": "delete_rbac_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_rbac_policy" + } + ] + }, + { + "action": { + "name": "create_flavor_service_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_flavor_service_profile" + } + ] + }, + { + "action": { + "name": "delete_flavor_service_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_flavor_service_profile" + } + ] + }, + { + "action": { + "name": "get_flavor_service_profile" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_flavor_service_profile" + } + ] + }, + { + "action": { + "name": "get_auto_allocated_topology" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_auto_allocated_topology" + } + ] + }, + { + "action": { + "name": "create_trunk" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_trunk" + } + ] + }, + { + "action": { + "name": "get_trunk" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_trunk" + } + ] + }, + { + "action": { + "name": "delete_trunk" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_trunk" + } + ] + }, + { + "action": { + "name": "get_subports" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_subports" + } + ] + }, + { + "action": { + "name": "add_subports" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_subports" + } + ] + }, + { + "action": { + "name": "remove_subports" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "remove_subports" + } + ] + }, + { + "action": { + "name": "get_security_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_security_groups" + } + ] + }, + { + "action": { + "name": "get_security_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_security_group" + } + ] + }, + { + "action": { + "name": "create_security_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_security_group" + } + ] + }, + { + "action": { + "name": "update_security_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_security_group" + } + ] + }, + { + "action": { + "name": "delete_security_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_security_group" + } + ] + }, + { + "action": { + "name": "get_security_group_rules" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_security_group_rules" + } + ] + }, + { + "action": { + "name": "get_security_group_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_security_group_rule" + } + ] + }, + { + "action": { + "name": "create_security_group_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_security_group_rule" + } + ] + }, + { + "action": { + "name": "delete_security_group_rule" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_security_group_rule" + } + ] + }, + { + "action": { + "name": "get_loggable_resources" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_loggable_resources" + } + ] + }, + { + "action": { + "name": "create_log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "create_log" + } + ] + }, + { + "action": { + "name": "update_log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "update_log" + } + ] + }, + { + "action": { + "name": "delete_log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_log" + } + ] + }, + { + "action": { + "name": "get_logs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_logs" + } + ] + }, + { + "action": { + "name": "get_log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_log" + } + ] + }, + { + "action": { + "name": "cells_scheduler_filter:TargetCellFilter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "cells_scheduler_filter:TargetCellFilter" + } + ] + }, + { + "action": { + "name": "compute:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create" + } + ] + }, + { + "action": { + "name": "compute:create:attach_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create:attach_network" + } + ] + }, + { + "action": { + "name": "compute:create:attach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create:attach_volume" + } + ] + }, + { + "action": { + "name": "compute:create:forced_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create:forced_host" + } + ] + }, + { + "action": { + "name": "compute:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get" + } + ] + }, + { + "action": { + "name": "compute:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all" + } + ] + }, + { + "action": { + "name": "compute:get_all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all_tenants" + } + ] + }, + { + "action": { + "name": "compute:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:update" + } + ] + }, + { + "action": { + "name": "compute:get_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:get_all_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:get_all_instance_system_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all_instance_system_metadata" + } + ] + }, + { + "action": { + "name": "compute:update_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:update_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:delete_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:delete_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:get_instance_faults" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_instance_faults" + } + ] + }, + { + "action": { + "name": "compute:get_diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_diagnostics" + } + ] + }, + { + "action": { + "name": "compute:get_instance_diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_instance_diagnostics" + } + ] + }, + { + "action": { + "name": "compute:start" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:start" + } + ] + }, + { + "action": { + "name": "compute:stop" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:stop" + } + ] + }, + { + "action": { + "name": "compute:get_lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_lock" + } + ] + }, + { + "action": { + "name": "compute:lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:lock" + } + ] + }, + { + "action": { + "name": "compute:unlock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unlock" + } + ] + }, + { + "action": { + "name": "compute:unlock_override" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unlock_override" + } + ] + }, + { + "action": { + "name": "compute:get_vnc_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_vnc_console" + } + ] + }, + { + "action": { + "name": "compute:get_spice_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_spice_console" + } + ] + }, + { + "action": { + "name": "compute:get_rdp_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_rdp_console" + } + ] + }, + { + "action": { + "name": "compute:get_serial_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_serial_console" + } + ] + }, + { + "action": { + "name": "compute:get_mks_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_mks_console" + } + ] + }, + { + "action": { + "name": "compute:get_console_output" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_console_output" + } + ] + }, + { + "action": { + "name": "compute:reset_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:reset_network" + } + ] + }, + { + "action": { + "name": "compute:inject_network_info" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:inject_network_info" + } + ] + }, + { + "action": { + "name": "compute:add_fixed_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:add_fixed_ip" + } + ] + }, + { + "action": { + "name": "compute:remove_fixed_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:remove_fixed_ip" + } + ] + }, + { + "action": { + "name": "compute:attach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:attach_volume" + } + ] + }, + { + "action": { + "name": "compute:detach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:detach_volume" + } + ] + }, + { + "action": { + "name": "compute:swap_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:swap_volume" + } + ] + }, + { + "action": { + "name": "compute:attach_interface" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:attach_interface" + } + ] + }, + { + "action": { + "name": "compute:detach_interface" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:detach_interface" + } + ] + }, + { + "action": { + "name": "compute:set_admin_password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:set_admin_password" + } + ] + }, + { + "action": { + "name": "compute:rescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:rescue" + } + ] + }, + { + "action": { + "name": "compute:unrescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unrescue" + } + ] + }, + { + "action": { + "name": "compute:suspend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:suspend" + } + ] + }, + { + "action": { + "name": "compute:resume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:resume" + } + ] + }, + { + "action": { + "name": "compute:pause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:pause" + } + ] + }, + { + "action": { + "name": "compute:unpause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unpause" + } + ] + }, + { + "action": { + "name": "compute:shelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:shelve" + } + ] + }, + { + "action": { + "name": "compute:shelve_offload" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:shelve_offload" + } + ] + }, + { + "action": { + "name": "compute:unshelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unshelve" + } + ] + }, + { + "action": { + "name": "compute:snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:snapshot" + } + ] + }, + { + "action": { + "name": "compute:snapshot_volume_backed" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:snapshot_volume_backed" + } + ] + }, + { + "action": { + "name": "compute:backup" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:backup" + } + ] + }, + { + "action": { + "name": "compute:resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:resize" + } + ] + }, + { + "action": { + "name": "compute:confirm_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:confirm_resize" + } + ] + }, + { + "action": { + "name": "compute:revert_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:revert_resize" + } + ] + }, + { + "action": { + "name": "compute:rebuild" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:rebuild" + } + ] + }, + { + "action": { + "name": "compute:reboot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:reboot" + } + ] + }, + { + "action": { + "name": "compute:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:delete" + } + ] + }, + { + "action": { + "name": "compute:soft_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:soft_delete" + } + ] + }, + { + "action": { + "name": "compute:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:force_delete" + } + ] + }, + { + "action": { + "name": "compute:security_groups:add_to_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:security_groups:add_to_instance" + } + ] + }, + { + "action": { + "name": "compute:security_groups:remove_from_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:security_groups:remove_from_instance" + } + ] + }, + { + "action": { + "name": "compute:restore" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:restore" + } + ] + }, + { + "action": { + "name": "compute:volume_snapshot_create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:volume_snapshot_create" + } + ] + }, + { + "action": { + "name": "compute:volume_snapshot_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:volume_snapshot_delete" + } + ] + }, + { + "action": { + "name": "compute_extension:accounts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:accounts" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:pause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:pause" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:unpause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:unpause" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:suspend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:suspend" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:resume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:resume" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:lock" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:unlock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:unlock" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:resetNetwork" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:resetNetwork" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:injectNetworkInfo" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:injectNetworkInfo" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:createBackup" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:createBackup" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:migrateLive" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:migrateLive" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:resetState" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:resetState" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:migrate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:migrate" + } + ] + }, + { + "action": { + "name": "compute_extension:aggregates" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:aggregates" + } + ] + }, + { + "action": { + "name": "compute_extension:agents" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:agents" + } + ] + }, + { + "action": { + "name": "compute_extension:attach_interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:attach_interfaces" + } + ] + }, + { + "action": { + "name": "compute_extension:baremetal_nodes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:baremetal_nodes" + } + ] + }, + { + "action": { + "name": "compute_extension:cells" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:create" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:update" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:sync_instances" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:sync_instances" + } + ] + }, + { + "action": { + "name": "compute_extension:certificates" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:certificates" + } + ] + }, + { + "action": { + "name": "compute_extension:cloudpipe" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cloudpipe" + } + ] + }, + { + "action": { + "name": "compute_extension:cloudpipe_update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cloudpipe_update" + } + ] + }, + { + "action": { + "name": "compute_extension:config_drive" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:config_drive" + } + ] + }, + { + "action": { + "name": "compute_extension:console_output" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:console_output" + } + ] + }, + { + "action": { + "name": "compute_extension:consoles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:consoles" + } + ] + }, + { + "action": { + "name": "compute_extension:createserverext" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:createserverext" + } + ] + }, + { + "action": { + "name": "compute_extension:deferred_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:deferred_delete" + } + ] + }, + { + "action": { + "name": "compute_extension:disk_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:disk_config" + } + ] + }, + { + "action": { + "name": "compute_extension:evacuate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:evacuate" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_server_attributes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_server_attributes" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_status" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_availability_zone" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_availability_zone" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_ips" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_ips_mac" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_ips_mac" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_vif_net" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_vif_net" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_volumes" + } + ] + }, + { + "action": { + "name": "compute_extension:fixed_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:fixed_ips" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_access" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_access:addTenantAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_access:addTenantAccess" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_access:removeTenantAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_access:removeTenantAccess" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_disabled" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_disabled" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_rxtx" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_rxtx" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_swap" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_swap" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextradata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextradata" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:index" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:show" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:create" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:update" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:flavormanage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavormanage" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ip_dns" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ip_dns" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ip_pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ip_pools" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ips" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ips_bulk" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ips_bulk" + } + ] + }, + { + "action": { + "name": "compute_extension:fping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:fping" + } + ] + }, + { + "action": { + "name": "compute_extension:fping:all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:fping:all_tenants" + } + ] + }, + { + "action": { + "name": "compute_extension:hide_server_addresses" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:hide_server_addresses" + } + ] + }, + { + "action": { + "name": "compute_extension:hosts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:hosts" + } + ] + }, + { + "action": { + "name": "compute_extension:hypervisors" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:hypervisors" + } + ] + }, + { + "action": { + "name": "compute_extension:image_size" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:image_size" + } + ] + }, + { + "action": { + "name": "compute_extension:instance_actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:instance_actions" + } + ] + }, + { + "action": { + "name": "compute_extension:instance_actions:events" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:instance_actions:events" + } + ] + }, + { + "action": { + "name": "compute_extension:instance_usage_audit_log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:instance_usage_audit_log" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:index" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:show" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:create" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:multinic" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:multinic" + } + ] + }, + { + "action": { + "name": "compute_extension:networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:networks" + } + ] + }, + { + "action": { + "name": "compute_extension:networks:view" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:networks:view" + } + ] + }, + { + "action": { + "name": "compute_extension:networks_associate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:networks_associate" + } + ] + }, + { + "action": { + "name": "compute_extension:os-tenant-networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-tenant-networks" + } + ] + }, + { + "action": { + "name": "compute_extension:quotas:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quotas:show" + } + ] + }, + { + "action": { + "name": "compute_extension:quotas:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quotas:update" + } + ] + }, + { + "action": { + "name": "compute_extension:quotas:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quotas:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:quota_classes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quota_classes" + } + ] + }, + { + "action": { + "name": "compute_extension:rescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:rescue" + } + ] + }, + { + "action": { + "name": "compute_extension:security_group_default_rules" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:security_group_default_rules" + } + ] + }, + { + "action": { + "name": "compute_extension:security_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:security_groups" + } + ] + }, + { + "action": { + "name": "compute_extension:server_diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_diagnostics" + } + ] + }, + { + "action": { + "name": "compute_extension:server_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_groups" + } + ] + }, + { + "action": { + "name": "compute_extension:server_password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_password" + } + ] + }, + { + "action": { + "name": "compute_extension:server_usage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_usage" + } + ] + }, + { + "action": { + "name": "compute_extension:services" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:services" + } + ] + }, + { + "action": { + "name": "compute_extension:shelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:shelve" + } + ] + }, + { + "action": { + "name": "compute_extension:shelveOffload" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:shelveOffload" + } + ] + }, + { + "action": { + "name": "compute_extension:simple_tenant_usage:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:simple_tenant_usage:show" + } + ] + }, + { + "action": { + "name": "compute_extension:simple_tenant_usage:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:simple_tenant_usage:list" + } + ] + }, + { + "action": { + "name": "compute_extension:unshelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:unshelve" + } + ] + }, + { + "action": { + "name": "compute_extension:users" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:users" + } + ] + }, + { + "action": { + "name": "compute_extension:virtual_interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:virtual_interfaces" + } + ] + }, + { + "action": { + "name": "compute_extension:virtual_storage_arrays" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:virtual_storage_arrays" + } + ] + }, + { + "action": { + "name": "compute_extension:volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volumes" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:index" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:show" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:create" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:update" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:volumetypes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volumetypes" + } + ] + }, + { + "action": { + "name": "compute_extension:availability_zone:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:availability_zone:list" + } + ] + }, + { + "action": { + "name": "compute_extension:availability_zone:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:availability_zone:detail" + } + ] + }, + { + "action": { + "name": "compute_extension:used_limits_for_admin" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:used_limits_for_admin" + } + ] + }, + { + "action": { + "name": "compute_extension:migrations:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:migrations:index" + } + ] + }, + { + "action": { + "name": "compute_extension:os-assisted-volume-snapshots:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:create" + } + ] + }, + { + "action": { + "name": "compute_extension:os-assisted-volume-snapshots:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:console_auth_tokens" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:console_auth_tokens" + } + ] + }, + { + "action": { + "name": "compute_extension:os-server-external-events:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-server-external-events:create" + } + ] + }, + { + "action": { + "name": "network:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_all" + } + ] + }, + { + "action": { + "name": "network:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get" + } + ] + }, + { + "action": { + "name": "network:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:create" + } + ] + }, + { + "action": { + "name": "network:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:delete" + } + ] + }, + { + "action": { + "name": "network:associate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:associate" + } + ] + }, + { + "action": { + "name": "network:disassociate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:disassociate" + } + ] + }, + { + "action": { + "name": "network:get_vifs_by_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_vifs_by_instance" + } + ] + }, + { + "action": { + "name": "network:allocate_for_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:allocate_for_instance" + } + ] + }, + { + "action": { + "name": "network:deallocate_for_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:deallocate_for_instance" + } + ] + }, + { + "action": { + "name": "network:validate_networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:validate_networks" + } + ] + }, + { + "action": { + "name": "network:get_instance_uuids_by_ip_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_instance_uuids_by_ip_filter" + } + ] + }, + { + "action": { + "name": "network:get_instance_id_by_floating_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_instance_id_by_floating_address" + } + ] + }, + { + "action": { + "name": "network:setup_networks_on_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:setup_networks_on_host" + } + ] + }, + { + "action": { + "name": "network:get_backdoor_port" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_backdoor_port" + } + ] + }, + { + "action": { + "name": "network:get_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ip" + } + ] + }, + { + "action": { + "name": "network:get_floating_ip_pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ip_pools" + } + ] + }, + { + "action": { + "name": "network:get_floating_ip_by_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ip_by_address" + } + ] + }, + { + "action": { + "name": "network:get_floating_ips_by_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ips_by_project" + } + ] + }, + { + "action": { + "name": "network:get_floating_ips_by_fixed_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ips_by_fixed_address" + } + ] + }, + { + "action": { + "name": "network:allocate_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:allocate_floating_ip" + } + ] + }, + { + "action": { + "name": "network:associate_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:associate_floating_ip" + } + ] + }, + { + "action": { + "name": "network:disassociate_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:disassociate_floating_ip" + } + ] + }, + { + "action": { + "name": "network:release_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:release_floating_ip" + } + ] + }, + { + "action": { + "name": "network:migrate_instance_start" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:migrate_instance_start" + } + ] + }, + { + "action": { + "name": "network:migrate_instance_finish" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:migrate_instance_finish" + } + ] + }, + { + "action": { + "name": "network:get_fixed_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_fixed_ip" + } + ] + }, + { + "action": { + "name": "network:get_fixed_ip_by_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_fixed_ip_by_address" + } + ] + }, + { + "action": { + "name": "network:add_fixed_ip_to_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:add_fixed_ip_to_instance" + } + ] + }, + { + "action": { + "name": "network:remove_fixed_ip_from_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:remove_fixed_ip_from_instance" + } + ] + }, + { + "action": { + "name": "network:add_network_to_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:add_network_to_project" + } + ] + }, + { + "action": { + "name": "network:get_instance_nw_info" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_instance_nw_info" + } + ] + }, + { + "action": { + "name": "network:get_dns_domains" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_dns_domains" + } + ] + }, + { + "action": { + "name": "network:add_dns_entry" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:add_dns_entry" + } + ] + }, + { + "action": { + "name": "network:modify_dns_entry" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:modify_dns_entry" + } + ] + }, + { + "action": { + "name": "network:delete_dns_entry" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:delete_dns_entry" + } + ] + }, + { + "action": { + "name": "network:get_dns_entries_by_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_dns_entries_by_address" + } + ] + }, + { + "action": { + "name": "network:get_dns_entries_by_name" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_dns_entries_by_name" + } + ] + }, + { + "action": { + "name": "network:create_private_dns_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:create_private_dns_domain" + } + ] + }, + { + "action": { + "name": "network:create_public_dns_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:create_public_dns_domain" + } + ] + }, + { + "action": { + "name": "network:delete_dns_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:delete_dns_domain" + } + ] + }, + { + "action": { + "name": "network:attach_external_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:attach_external_network" + } + ] + }, + { + "action": { + "name": "network:get_vif_by_mac_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_vif_by_mac_address" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:detail:get_all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:detail:get_all_tenants" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:index:get_all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:index:get_all_tenants" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:confirm_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:confirm_resize" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create:attach_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create:attach_network" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create:attach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create:attach_volume" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create:forced_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create:forced_host" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:reboot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:reboot" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:rebuild" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:rebuild" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:resize" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:revert_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:revert_resize" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create_image" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create_image:allow_volume_backed" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create_image:allow_volume_backed" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:start" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:start" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:stop" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:stop" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-access-ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-access-ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-access-ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-access-ips" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:reset_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:reset_network" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:inject_network_info" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:inject_network_info" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:reset_state" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:reset_state" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-password" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-password:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-password:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:add_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:add_host" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:remove_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:remove_host" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:set_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:set_metadata" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-agents" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-agents" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-agents:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-agents:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-attach-interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-attach-interfaces" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-attach-interfaces:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-attach-interfaces:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-baremetal-nodes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-baremetal-nodes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-baremetal-nodes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-baremetal-nodes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:sync_instances" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:sync_instances" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-certificates:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-certificates:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-certificates:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-certificates:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-certificates:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-certificates:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cloudpipe" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cloudpipe" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cloudpipe:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cloudpipe:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-config-drive" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-config-drive" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-console-output:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-console-output:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-console-output" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-console-output" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-remote-consoles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-remote-consoles" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-remote-consoles:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-remote-consoles:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-create-backup:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-create-backup:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-create-backup" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-create-backup" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-deferred-delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-deferred-delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-deferred-delete:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-deferred-delete:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-disk-config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-disk-config" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-disk-config:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-disk-config:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-evacuate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-evacuate" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-evacuate:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-evacuate:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-server-attributes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-server-attributes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-server-attributes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-server-attributes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-status" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-status:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-status:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-availability-zone" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-availability-zone" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-availability-zone:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-availability-zone:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:extensions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:extensions" + } + ] + }, + { + "action": { + "name": "os_compute_api:extension_info:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:extension_info:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-volumes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-volumes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-volumes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fixed-ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fixed-ips" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fixed-ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fixed-ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access:remove_tenant_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access:add_tenant_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access:add_tenant_access" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-rxtx" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-rxtx" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-rxtx:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-rxtx:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:flavors:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:flavors:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-manage:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-manage:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-manage" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns:domain:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns:domain:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-pools" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-pools:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-pools:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips-bulk" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips-bulk" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips-bulk:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fping" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fping:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fping:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fping:all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fping:all_tenants" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hide-server-addresses" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hide-server-addresses" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hide-server-addresses:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hide-server-addresses:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hosts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hosts" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hosts:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hosts:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hypervisors" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hypervisors" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hypervisors:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hypervisors:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:images:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:images:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:image-size" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:image-size" + } + ] + }, + { + "action": { + "name": "os_compute_api:image-size:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:image-size:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-actions" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-actions:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-actions:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-actions:events" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-actions:events" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-usage-audit-log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-usage-audit-log" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:ips:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:ips:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:ips:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:ips:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:limits:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:limits:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:limits" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:lock" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:unlock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:unlock" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:unlock:unlock_override" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrate-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrate-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrate-server:migrate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrate-server:migrate" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrate-server:migrate_live" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrate-server:migrate_live" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-multinic" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-multinic" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-multinic:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-multinic:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks:view" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks:view" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks-associate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks-associate" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks-associate:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks-associate:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pause-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pause-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pause-server:pause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pause-server:pause" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pause-server:unpause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pause-server:unpause" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:pci_servers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:pci_servers" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-personality:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-personality:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:defaults" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:defaults" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-class-sets:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-class-sets:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-class-sets:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-class-sets:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-class-sets:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-class-sets:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-rescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-rescue" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-rescue:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-rescue:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-scheduler-hints:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-scheduler-hints:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-group-default-rules:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-group-default-rules:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-group-default-rules" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-group-default-rules" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-groups" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-groups:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-groups:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-diagnostics" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-diagnostics:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-diagnostics:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-password" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-password:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-password:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-usage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-usage" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-usage:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-usage:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-groups" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-groups:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-groups:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-services" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-services" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-services:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-services:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:update_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:update_all" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:shelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:shelve" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:shelve:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:shelve:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:shelve_offload" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:shelve_offload" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-simple-tenant-usage:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-simple-tenant-usage:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-simple-tenant-usage:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-simple-tenant-usage:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-simple-tenant-usage:list" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-suspend-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-suspend-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-suspend-server:suspend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-suspend-server:suspend" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-suspend-server:resume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-suspend-server:resume" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-tenant-networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-tenant-networks" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-tenant-networks:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-tenant-networks:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:unshelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:unshelve" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-user-data:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-user-data:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-virtual-interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-virtual-interfaces" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-virtual-interfaces:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-virtual-interfaces:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-availability-zone:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-availability-zone:list" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-availability-zone:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-availability-zone:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-availability-zone:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-availability-zone:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-used-limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-used-limits" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-used-limits:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-used-limits:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrations:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrations:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrations:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrations:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-assisted-volume-snapshots:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-assisted-volume-snapshots:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-console-auth-tokens" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-console-auth-tokens" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-external-events:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-external-events:create" + } + ] + } + ], + "meta_rules": [ + { + "name": "rbac", + "description": "", + "subject_categories": [ + { + "name": "role" + } + ], + "object_categories": [ + { + "name": "id" + } + ], + "action_categories": [ + { + "name": "action_id" + } + ] + } + ], + "rules": [ + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_volume_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete_volume_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_volume_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_volume_admin_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_volume_admin_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_all_snapshots" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:create_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:extend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_readonly_flag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:retype" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:types_manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:types_extra_specs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:access_types_qos_specs_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:access_types_extra_specs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_access:addProjectAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_access:removeProjectAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_encryption" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_encryption_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:extended_snapshot_attributes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_image_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quotas:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quotas:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quotas:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quota_classes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:reset_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:snapshot_admin_actions:reset_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:backup_admin_actions:reset_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:force_detach" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:snapshot_admin_actions:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:backup_admin_actions:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_host_attribute" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_tenant_attribute" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_mig_status_attribute" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:hosts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:services:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:services:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_unmanage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:capabilities" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:create_transfer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:accept_transfer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete_transfer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_all_transfers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:replication:promote" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:replication:reenable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:enable_replication" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:disable_replication" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:failover_replication" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:list_replication_targets" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:restore" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:backup-import" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:backup-export" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "snapshot_extension:snapshot_manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "snapshot_extension:snapshot_unmanage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:create_cgsnapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:delete_cgsnapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get_cgsnapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get_all_cgsnapshots" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "scheduler_extension:scheduler_stats:get_pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_images" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "modify_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "publicize_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "communitize_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "copy_from" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "download_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "upload_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_image_location" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_image_location" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "set_image_location" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_members" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "modify_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "manage_image_cache" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_task" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_tasks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_task" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "modify_task" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "tasks_api_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "deactivate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "reactivate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_namespace" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_namespaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "modify_metadef_namespace" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_metadef_namespace" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_object" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_objects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "modify_metadef_object" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_metadef_object" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "list_metadef_resource_types" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_resource_type" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_metadef_resource_type_association" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_property" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_properties" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "modify_metadef_property" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_metadef_property" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metadef_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "modify_metadef_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_metadef_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_metadef_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_regions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_services" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_registered_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_registered_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_registered_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_registered_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_registered_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_domains" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_target_project_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_project_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_user_projects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_project_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_project_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_project_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_project_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_project_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_project_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_target_user_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_user_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_users" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_target_group_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_group_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_groups_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_users_in_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:remove_user_from_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_user_in_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:add_user_to_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_credentials" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_get_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_list_credentials" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_create_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_delete_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_matches_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_matches_target_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_matches_target_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_matches_filter_on_list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_matches_filter_on_list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_prior_role_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "implied_role_matches_prior_role_domain_or_global" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_implied_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_role_inference_rules" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_system_grants_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_system_grant_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_system_grant_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_system_grant_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_system_grants_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_system_grant_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_system_grant_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_system_grant_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_grant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_grant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_grant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_global_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_domain_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_grant_match" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_global_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_domain_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_list_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_list_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_on_domain_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_on_project_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_on_domain_of_project_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_role_assignments" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_role_assignments_for_tree" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_policies" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:validate_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:validate_token_head" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revocation_list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_trusts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_roles_for_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_role_for_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_consumers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:authorize_request_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_access_token_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_access_token_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_access_tokens" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_access_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_access_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:add_endpoint_to_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_endpoint_in_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints_for_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:remove_endpoint_from_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoint_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects_associated_with_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints_associated_with_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_endpoint_group_in_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoint_groups_for_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:add_endpoint_group_to_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:remove_endpoint_group_from_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_identity_providers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_protocols" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_mappings" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_service_providers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_catalog" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_projects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_domains" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_system" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_domains_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_revoke_events" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy_association_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_policy_association_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy_association_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy_association_for_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_policy_association_for_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy_association_for_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy_association_for_region_and_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_policy_association_for_region_and_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy_association_for_region_and_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_policy_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints_for_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_security_compliance_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain_config_default" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_application_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_application_credentials" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_application_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_application_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_subnet" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_subnet:segment_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_subnet:service_types" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_subnet" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_subnet:segment_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_subnet" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_subnet:service_types" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_subnet" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_subnetpool" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_subnetpool:shared" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_subnetpool:is_default" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_subnetpool" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_subnetpool" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_subnetpool:is_default" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_subnetpool" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_address_scope" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_address_scope:shared" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_address_scope" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_address_scope" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_address_scope:shared" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_address_scope" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network:router:external" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network:segments" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network:provider:network_type" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network:provider:physical_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network:provider:segmentation_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network:queue_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network_ip_availabilities" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network_ip_availability" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network:shared" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network:router:external" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network:is_default" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network:segments" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network:provider:network_type" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network:provider:physical_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network:provider:segmentation_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network:segments" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network:shared" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network:provider:network_type" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network:provider:physical_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network:provider:segmentation_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network:router:external" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_segment" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_segment" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_segment" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_segment" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network_device" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:device_owner" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:mac_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:fixed_ips:ip_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:fixed_ips:subnet_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:port_security_enabled" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:binding:host_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:binding:profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:mac_learning_enabled" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_port:allowed_address_pairs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_port" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_port:queue_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_port:binding:vif_type" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_port:binding:vif_details" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_port:binding:host_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_port:binding:profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:device_owner" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:mac_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:fixed_ips:ip_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:fixed_ips:subnet_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:port_security_enabled" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:binding:host_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:binding:profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:mac_learning_enabled" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:allowed_address_pairs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_port:data_plane_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_port" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_router:ha" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_router" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_router:external_gateway_info:enable_snat" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_router:distributed" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_router:ha" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_router" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_router:distributed" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_router" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_router:external_gateway_info" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_router:external_gateway_info:network_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_router:external_gateway_info:enable_snat" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_router:distributed" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_router:ha" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_router" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_router_interface" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "remove_router_interface" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_router:external_gateway_info:external_fixed_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_router:external_gateway_info:external_fixed_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_qos_queue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_qos_queue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_agent" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_agent" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_agent" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_dhcp-network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_dhcp-network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_dhcp-networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_l3-router" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_l3-router" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_l3-routers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_dhcp-agents" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_l3-agents" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_loadbalancer-agent" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_loadbalancer-pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_agent-loadbalancers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_loadbalancer-hosting-agent" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_floatingip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_floatingip:floating_ip_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_floatingip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_floatingip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_floatingip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_network_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_network_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_network_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network_profiles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_network_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_policy_profiles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_policy_profiles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_policy_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_metering_label" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_metering_label" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metering_label" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_metering_label_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_metering_label_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_metering_label_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_lsn" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_lsn" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_flavor" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_flavor" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_flavor" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_flavors" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_flavor" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_service_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_service_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_service_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_service_profiles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_service_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_policy_bandwidth_limit_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_policy_bandwidth_limit_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_policy_bandwidth_limit_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_policy_bandwidth_limit_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_policy_dscp_marking_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_policy_dscp_marking_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_policy_dscp_marking_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_policy_dscp_marking_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_rule_type" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_policy_minimum_bandwidth_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_policy_minimum_bandwidth_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_policy_minimum_bandwidth_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_policy_minimum_bandwidth_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "restrict_wildcard" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_rbac_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_rbac_policy:target_tenant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_rbac_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_rbac_policy:target_tenant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_rbac_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_rbac_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_flavor_service_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_flavor_service_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_flavor_service_profile" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_auto_allocated_topology" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_trunk" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_trunk" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_trunk" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_subports" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "add_subports" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "remove_subports" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_security_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_security_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_security_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_security_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_security_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_security_group_rules" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_security_group_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_security_group_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_security_group_rule" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_loggable_resources" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "create_log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "update_log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "delete_log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_logs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "cells_scheduler_filter:TargetCellFilter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create:attach_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create:attach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create:forced_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all_instance_system_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:update_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:delete_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_instance_faults" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_instance_diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:start" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:stop" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unlock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unlock_override" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_vnc_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_spice_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_rdp_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_serial_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_mks_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_console_output" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:reset_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:inject_network_info" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:add_fixed_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:remove_fixed_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:attach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:detach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:swap_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:attach_interface" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:detach_interface" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:set_admin_password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:rescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unrescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:suspend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:resume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:pause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unpause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:shelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:shelve_offload" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unshelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:snapshot_volume_backed" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:backup" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:confirm_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:revert_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:rebuild" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:reboot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:soft_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:security_groups:add_to_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:security_groups:remove_from_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:restore" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:volume_snapshot_create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:volume_snapshot_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:accounts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:pause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:unpause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:suspend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:resume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:unlock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:resetNetwork" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:injectNetworkInfo" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:createBackup" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:migrateLive" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:resetState" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:migrate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:aggregates" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:agents" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:attach_interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:baremetal_nodes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:sync_instances" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:certificates" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cloudpipe" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cloudpipe_update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:config_drive" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:console_output" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:consoles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:createserverext" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:deferred_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:disk_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:evacuate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_server_attributes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_availability_zone" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_ips_mac" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_vif_net" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:fixed_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_access:addTenantAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_access:removeTenantAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_disabled" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_rxtx" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_swap" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextradata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavormanage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ip_dns" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ip_pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ips_bulk" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:fping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:fping:all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:hide_server_addresses" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:hosts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:hypervisors" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:image_size" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:instance_actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:instance_actions:events" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:instance_usage_audit_log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:multinic" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:networks:view" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:networks_associate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-tenant-networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quotas:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quotas:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quotas:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quota_classes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:rescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:security_group_default_rules" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:security_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_usage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:services" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:shelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:shelveOffload" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:simple_tenant_usage:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:simple_tenant_usage:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:unshelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:users" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:virtual_interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:virtual_storage_arrays" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volumetypes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:availability_zone:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:availability_zone:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:used_limits_for_admin" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:migrations:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:console_auth_tokens" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-server-external-events:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:associate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:disassociate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_vifs_by_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:allocate_for_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:deallocate_for_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:validate_networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_instance_uuids_by_ip_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_instance_id_by_floating_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:setup_networks_on_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_backdoor_port" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ip_pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ip_by_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ips_by_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ips_by_fixed_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:allocate_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:associate_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:disassociate_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:release_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:migrate_instance_start" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:migrate_instance_finish" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_fixed_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_fixed_ip_by_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:add_fixed_ip_to_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:remove_fixed_ip_from_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:add_network_to_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_instance_nw_info" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_dns_domains" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:add_dns_entry" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:modify_dns_entry" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:delete_dns_entry" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_dns_entries_by_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_dns_entries_by_name" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:create_private_dns_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:create_public_dns_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:delete_dns_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:attach_external_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_vif_by_mac_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:detail:get_all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:index:get_all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:confirm_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create:attach_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create:attach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create:forced_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:reboot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:rebuild" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:revert_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create_image:allow_volume_backed" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:start" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:stop" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-access-ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-access-ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:reset_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:inject_network_info" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:reset_state" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-password:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:add_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:remove_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:set_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-agents" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-agents:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-attach-interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-attach-interfaces:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-baremetal-nodes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-baremetal-nodes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:sync_instances" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-certificates:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-certificates:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-certificates:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cloudpipe" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cloudpipe:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-config-drive" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-console-output:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-console-output" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-remote-consoles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-remote-consoles:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-create-backup:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-create-backup" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-deferred-delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-deferred-delete:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-disk-config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-disk-config:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-evacuate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-evacuate:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-server-attributes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-server-attributes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-status:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-availability-zone" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-availability-zone:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:extensions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:extension_info:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-volumes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fixed-ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fixed-ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access:add_tenant_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-rxtx" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-rxtx:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:flavors:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-manage:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-pools:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips-bulk" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fping:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fping:all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hide-server-addresses" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hide-server-addresses:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hosts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hosts:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hypervisors" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hypervisors:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:images:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:image-size" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:image-size:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-actions:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-actions:events" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-usage-audit-log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:ips:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:ips:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:limits:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:unlock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrate-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrate-server:migrate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrate-server:migrate_live" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-multinic" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-multinic:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks:view" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks-associate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks-associate:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pause-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pause-server:pause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pause-server:unpause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:pci_servers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-personality:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:defaults" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-class-sets:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-class-sets:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-class-sets:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-rescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-rescue:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-scheduler-hints:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-group-default-rules:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-group-default-rules" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-groups:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-diagnostics:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-password:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-usage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-usage:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-groups:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-services" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-services:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:update_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:shelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:shelve:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:shelve_offload" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-simple-tenant-usage:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-simple-tenant-usage:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-suspend-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-suspend-server:suspend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-suspend-server:resume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-tenant-networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-tenant-networks:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:unshelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-user-data:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-virtual-interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-virtual-interfaces:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-availability-zone:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-availability-zone:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-availability-zone:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-used-limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-used-limits:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrations:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrations:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-console-auth-tokens" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-external-events:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + } + ] +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/opst_rbac_cinder.json b/moon_engine/tests/func_policies/opst_rbac_cinder.json new file mode 100644 index 00000000..f0cba96b --- /dev/null +++ b/moon_engine/tests/func_policies/opst_rbac_cinder.json @@ -0,0 +1,5078 @@ +{ + "policies": [ + { + "name": "OpenStack RBAC Policy", + "genre": "authz", + "description": "A RBAC policy similar of what you can find through policy.json files", + "model": { + "name": "OPST_RBAC" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "OPST_RBAC", + "description": "", + "meta_rules": [ + { + "name": "rbac" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "a role in OpenStack" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "the admin role", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "member", + "description": "the member role", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": { + "name": "admin" + }, + "category": { + "name": "role" + }, + "assignments": [ + { + "name": "admin" + }, + { + "name": "member" + } + ] + } + ], + "objects": [ + { + "name": "all_vm", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "the UID of each virtual machine" + } + ], + "object_data": [ + { + "name": "all_vm", + "description": "represents all virtual machines in this project", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": { + "name": "all_vm" + }, + "category": { + "name": "id" + }, + "assignments": [ + { + "name": "all_vm" + } + ] + } + ], + "actions": [ + { + "name": "volume:create", + "description": "volume:create action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete", + "description": "volume:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get", + "description": "volume:get action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_all", + "description": "volume:get_all action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_volume_metadata", + "description": "volume:get_volume_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete_volume_metadata", + "description": "volume:delete_volume_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_volume_metadata", + "description": "volume:update_volume_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_volume_admin_metadata", + "description": "volume:get_volume_admin_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_volume_admin_metadata", + "description": "volume:update_volume_admin_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_snapshot", + "description": "volume:get_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_all_snapshots", + "description": "volume:get_all_snapshots action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:create_snapshot", + "description": "volume:create_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete_snapshot", + "description": "volume:delete_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_snapshot", + "description": "volume:update_snapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:extend", + "description": "volume:extend action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update_readonly_flag", + "description": "volume:update_readonly_flag action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:retype", + "description": "volume:retype action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:update", + "description": "volume:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:types_manage", + "description": "volume_extension:types_manage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:types_extra_specs", + "description": "volume_extension:types_extra_specs action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:access_types_qos_specs_id", + "description": "volume_extension:access_types_qos_specs_id action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:access_types_extra_specs", + "description": "volume_extension:access_types_extra_specs action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_access", + "description": "volume_extension:volume_type_access action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_access:addProjectAccess", + "description": "volume_extension:volume_type_access:addProjectAccess action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_access:removeProjectAccess", + "description": "volume_extension:volume_type_access:removeProjectAccess action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_type_encryption", + "description": "volume_extension:volume_type_encryption action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_encryption_metadata", + "description": "volume_extension:volume_encryption_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:extended_snapshot_attributes", + "description": "volume_extension:extended_snapshot_attributes action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_image_metadata", + "description": "volume_extension:volume_image_metadata action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quotas:show", + "description": "volume_extension:quotas:show action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quotas:update", + "description": "volume_extension:quotas:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quotas:delete", + "description": "volume_extension:quotas:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quota_classes", + "description": "volume_extension:quota_classes action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use", + "description": "volume_extension:quota_classes:validate_setup_for_nested_quota_use action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:reset_status", + "description": "volume_extension:volume_admin_actions:reset_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:snapshot_admin_actions:reset_status", + "description": "volume_extension:snapshot_admin_actions:reset_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:backup_admin_actions:reset_status", + "description": "volume_extension:backup_admin_actions:reset_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:force_delete", + "description": "volume_extension:volume_admin_actions:force_delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:force_detach", + "description": "volume_extension:volume_admin_actions:force_detach action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:snapshot_admin_actions:force_delete", + "description": "volume_extension:snapshot_admin_actions:force_delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:backup_admin_actions:force_delete", + "description": "volume_extension:backup_admin_actions:force_delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume", + "description": "volume_extension:volume_admin_actions:migrate_volume action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion", + "description": "volume_extension:volume_admin_actions:migrate_volume_completion action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_host_attribute", + "description": "volume_extension:volume_host_attribute action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_tenant_attribute", + "description": "volume_extension:volume_tenant_attribute action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_mig_status_attribute", + "description": "volume_extension:volume_mig_status_attribute action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:hosts", + "description": "volume_extension:hosts action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:services:index", + "description": "volume_extension:services:index action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:services:update", + "description": "volume_extension:services:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_manage", + "description": "volume_extension:volume_manage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:volume_unmanage", + "description": "volume_extension:volume_unmanage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:capabilities", + "description": "volume_extension:capabilities action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:create_transfer", + "description": "volume:create_transfer action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:accept_transfer", + "description": "volume:accept_transfer action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:delete_transfer", + "description": "volume:delete_transfer action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:get_all_transfers", + "description": "volume:get_all_transfers action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:replication:promote", + "description": "volume_extension:replication:promote action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume_extension:replication:reenable", + "description": "volume_extension:replication:reenable action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:enable_replication", + "description": "volume:enable_replication action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:disable_replication", + "description": "volume:disable_replication action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:failover_replication", + "description": "volume:failover_replication action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "volume:list_replication_targets", + "description": "volume:list_replication_targets action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:create", + "description": "backup:create action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:delete", + "description": "backup:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:get", + "description": "backup:get action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:get_all", + "description": "backup:get_all action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:restore", + "description": "backup:restore action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:backup-import", + "description": "backup:backup-import action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "backup:backup-export", + "description": "backup:backup-export action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status", + "description": "snapshot_extension:snapshot_actions:update_snapshot_status action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "snapshot_extension:snapshot_manage", + "description": "snapshot_extension:snapshot_manage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "snapshot_extension:snapshot_unmanage", + "description": "snapshot_extension:snapshot_unmanage action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:create", + "description": "consistencygroup:create action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:delete", + "description": "consistencygroup:delete action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:update", + "description": "consistencygroup:update action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get", + "description": "consistencygroup:get action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get_all", + "description": "consistencygroup:get_all action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:create_cgsnapshot", + "description": "consistencygroup:create_cgsnapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:delete_cgsnapshot", + "description": "consistencygroup:delete_cgsnapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get_cgsnapshot", + "description": "consistencygroup:get_cgsnapshot action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "consistencygroup:get_all_cgsnapshots", + "description": "consistencygroup:get_all_cgsnapshots action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + }, + { + "name": "scheduler_extension:scheduler_stats:get_pools", + "description": "scheduler_extension:scheduler_stats:get_pools action for cinder", + "extra": { + "component": "cinder" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "action_id", + "description": "" + } + ], + "action_data": [ + { + "name": "volume:create", + "description": "volume:create action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete", + "description": "volume:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get", + "description": "volume:get action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_all", + "description": "volume:get_all action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_volume_metadata", + "description": "volume:get_volume_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete_volume_metadata", + "description": "volume:delete_volume_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_volume_metadata", + "description": "volume:update_volume_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_volume_admin_metadata", + "description": "volume:get_volume_admin_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_volume_admin_metadata", + "description": "volume:update_volume_admin_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_snapshot", + "description": "volume:get_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_all_snapshots", + "description": "volume:get_all_snapshots action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:create_snapshot", + "description": "volume:create_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete_snapshot", + "description": "volume:delete_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_snapshot", + "description": "volume:update_snapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:extend", + "description": "volume:extend action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update_readonly_flag", + "description": "volume:update_readonly_flag action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:retype", + "description": "volume:retype action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:update", + "description": "volume:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:types_manage", + "description": "volume_extension:types_manage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:types_extra_specs", + "description": "volume_extension:types_extra_specs action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:access_types_qos_specs_id", + "description": "volume_extension:access_types_qos_specs_id action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:access_types_extra_specs", + "description": "volume_extension:access_types_extra_specs action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_access", + "description": "volume_extension:volume_type_access action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_access:addProjectAccess", + "description": "volume_extension:volume_type_access:addProjectAccess action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_access:removeProjectAccess", + "description": "volume_extension:volume_type_access:removeProjectAccess action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_type_encryption", + "description": "volume_extension:volume_type_encryption action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_encryption_metadata", + "description": "volume_extension:volume_encryption_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:extended_snapshot_attributes", + "description": "volume_extension:extended_snapshot_attributes action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_image_metadata", + "description": "volume_extension:volume_image_metadata action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quotas:show", + "description": "volume_extension:quotas:show action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quotas:update", + "description": "volume_extension:quotas:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quotas:delete", + "description": "volume_extension:quotas:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quota_classes", + "description": "volume_extension:quota_classes action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use", + "description": "volume_extension:quota_classes:validate_setup_for_nested_quota_use action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:reset_status", + "description": "volume_extension:volume_admin_actions:reset_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:snapshot_admin_actions:reset_status", + "description": "volume_extension:snapshot_admin_actions:reset_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:backup_admin_actions:reset_status", + "description": "volume_extension:backup_admin_actions:reset_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:force_delete", + "description": "volume_extension:volume_admin_actions:force_delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:force_detach", + "description": "volume_extension:volume_admin_actions:force_detach action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:snapshot_admin_actions:force_delete", + "description": "volume_extension:snapshot_admin_actions:force_delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:backup_admin_actions:force_delete", + "description": "volume_extension:backup_admin_actions:force_delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume", + "description": "volume_extension:volume_admin_actions:migrate_volume action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion", + "description": "volume_extension:volume_admin_actions:migrate_volume_completion action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_host_attribute", + "description": "volume_extension:volume_host_attribute action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_tenant_attribute", + "description": "volume_extension:volume_tenant_attribute action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_mig_status_attribute", + "description": "volume_extension:volume_mig_status_attribute action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:hosts", + "description": "volume_extension:hosts action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:services:index", + "description": "volume_extension:services:index action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:services:update", + "description": "volume_extension:services:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_manage", + "description": "volume_extension:volume_manage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:volume_unmanage", + "description": "volume_extension:volume_unmanage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:capabilities", + "description": "volume_extension:capabilities action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:create_transfer", + "description": "volume:create_transfer action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:accept_transfer", + "description": "volume:accept_transfer action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:delete_transfer", + "description": "volume:delete_transfer action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:get_all_transfers", + "description": "volume:get_all_transfers action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:replication:promote", + "description": "volume_extension:replication:promote action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume_extension:replication:reenable", + "description": "volume_extension:replication:reenable action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:enable_replication", + "description": "volume:enable_replication action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:disable_replication", + "description": "volume:disable_replication action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:failover_replication", + "description": "volume:failover_replication action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "volume:list_replication_targets", + "description": "volume:list_replication_targets action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:create", + "description": "backup:create action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:delete", + "description": "backup:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:get", + "description": "backup:get action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:get_all", + "description": "backup:get_all action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:restore", + "description": "backup:restore action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:backup-import", + "description": "backup:backup-import action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "backup:backup-export", + "description": "backup:backup-export action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status", + "description": "snapshot_extension:snapshot_actions:update_snapshot_status action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "snapshot_extension:snapshot_manage", + "description": "snapshot_extension:snapshot_manage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "snapshot_extension:snapshot_unmanage", + "description": "snapshot_extension:snapshot_unmanage action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:create", + "description": "consistencygroup:create action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:delete", + "description": "consistencygroup:delete action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:update", + "description": "consistencygroup:update action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get", + "description": "consistencygroup:get action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get_all", + "description": "consistencygroup:get_all action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:create_cgsnapshot", + "description": "consistencygroup:create_cgsnapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:delete_cgsnapshot", + "description": "consistencygroup:delete_cgsnapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get_cgsnapshot", + "description": "consistencygroup:get_cgsnapshot action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "consistencygroup:get_all_cgsnapshots", + "description": "consistencygroup:get_all_cgsnapshots action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "scheduler_extension:scheduler_stats:get_pools", + "description": "scheduler_extension:scheduler_stats:get_pools action for cinder", + "policies": [], + "category": { + "name": "action_id" + } + } + ], + "action_assignments": [ + { + "action": { + "name": "volume:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:create" + } + ] + }, + { + "action": { + "name": "volume:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete" + } + ] + }, + { + "action": { + "name": "volume:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get" + } + ] + }, + { + "action": { + "name": "volume:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_all" + } + ] + }, + { + "action": { + "name": "volume:get_volume_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_volume_metadata" + } + ] + }, + { + "action": { + "name": "volume:delete_volume_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete_volume_metadata" + } + ] + }, + { + "action": { + "name": "volume:update_volume_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_volume_metadata" + } + ] + }, + { + "action": { + "name": "volume:get_volume_admin_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_volume_admin_metadata" + } + ] + }, + { + "action": { + "name": "volume:update_volume_admin_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_volume_admin_metadata" + } + ] + }, + { + "action": { + "name": "volume:get_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_snapshot" + } + ] + }, + { + "action": { + "name": "volume:get_all_snapshots" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_all_snapshots" + } + ] + }, + { + "action": { + "name": "volume:create_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:create_snapshot" + } + ] + }, + { + "action": { + "name": "volume:delete_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete_snapshot" + } + ] + }, + { + "action": { + "name": "volume:update_snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_snapshot" + } + ] + }, + { + "action": { + "name": "volume:extend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:extend" + } + ] + }, + { + "action": { + "name": "volume:update_readonly_flag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update_readonly_flag" + } + ] + }, + { + "action": { + "name": "volume:retype" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:retype" + } + ] + }, + { + "action": { + "name": "volume:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:update" + } + ] + }, + { + "action": { + "name": "volume_extension:types_manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:types_manage" + } + ] + }, + { + "action": { + "name": "volume_extension:types_extra_specs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:types_extra_specs" + } + ] + }, + { + "action": { + "name": "volume_extension:access_types_qos_specs_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:access_types_qos_specs_id" + } + ] + }, + { + "action": { + "name": "volume_extension:access_types_extra_specs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:access_types_extra_specs" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_access" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_access:addProjectAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_access:addProjectAccess" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_access:removeProjectAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_access:removeProjectAccess" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_type_encryption" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_type_encryption" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_encryption_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_encryption_metadata" + } + ] + }, + { + "action": { + "name": "volume_extension:extended_snapshot_attributes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:extended_snapshot_attributes" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_image_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_image_metadata" + } + ] + }, + { + "action": { + "name": "volume_extension:quotas:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quotas:show" + } + ] + }, + { + "action": { + "name": "volume_extension:quotas:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quotas:update" + } + ] + }, + { + "action": { + "name": "volume_extension:quotas:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quotas:delete" + } + ] + }, + { + "action": { + "name": "volume_extension:quota_classes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quota_classes" + } + ] + }, + { + "action": { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:reset_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:reset_status" + } + ] + }, + { + "action": { + "name": "volume_extension:snapshot_admin_actions:reset_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:snapshot_admin_actions:reset_status" + } + ] + }, + { + "action": { + "name": "volume_extension:backup_admin_actions:reset_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:backup_admin_actions:reset_status" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:force_delete" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:force_detach" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:force_detach" + } + ] + }, + { + "action": { + "name": "volume_extension:snapshot_admin_actions:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:snapshot_admin_actions:force_delete" + } + ] + }, + { + "action": { + "name": "volume_extension:backup_admin_actions:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:backup_admin_actions:force_delete" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:migrate_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_host_attribute" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_host_attribute" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_tenant_attribute" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_tenant_attribute" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_mig_status_attribute" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_mig_status_attribute" + } + ] + }, + { + "action": { + "name": "volume_extension:hosts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:hosts" + } + ] + }, + { + "action": { + "name": "volume_extension:services:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:services:index" + } + ] + }, + { + "action": { + "name": "volume_extension:services:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:services:update" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_manage" + } + ] + }, + { + "action": { + "name": "volume_extension:volume_unmanage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:volume_unmanage" + } + ] + }, + { + "action": { + "name": "volume_extension:capabilities" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:capabilities" + } + ] + }, + { + "action": { + "name": "volume:create_transfer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:create_transfer" + } + ] + }, + { + "action": { + "name": "volume:accept_transfer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:accept_transfer" + } + ] + }, + { + "action": { + "name": "volume:delete_transfer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:delete_transfer" + } + ] + }, + { + "action": { + "name": "volume:get_all_transfers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:get_all_transfers" + } + ] + }, + { + "action": { + "name": "volume_extension:replication:promote" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:replication:promote" + } + ] + }, + { + "action": { + "name": "volume_extension:replication:reenable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume_extension:replication:reenable" + } + ] + }, + { + "action": { + "name": "volume:enable_replication" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:enable_replication" + } + ] + }, + { + "action": { + "name": "volume:disable_replication" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:disable_replication" + } + ] + }, + { + "action": { + "name": "volume:failover_replication" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:failover_replication" + } + ] + }, + { + "action": { + "name": "volume:list_replication_targets" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "volume:list_replication_targets" + } + ] + }, + { + "action": { + "name": "backup:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:create" + } + ] + }, + { + "action": { + "name": "backup:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:delete" + } + ] + }, + { + "action": { + "name": "backup:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:get" + } + ] + }, + { + "action": { + "name": "backup:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:get_all" + } + ] + }, + { + "action": { + "name": "backup:restore" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:restore" + } + ] + }, + { + "action": { + "name": "backup:backup-import" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:backup-import" + } + ] + }, + { + "action": { + "name": "backup:backup-export" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "backup:backup-export" + } + ] + }, + { + "action": { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status" + } + ] + }, + { + "action": { + "name": "snapshot_extension:snapshot_manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "snapshot_extension:snapshot_manage" + } + ] + }, + { + "action": { + "name": "snapshot_extension:snapshot_unmanage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "snapshot_extension:snapshot_unmanage" + } + ] + }, + { + "action": { + "name": "consistencygroup:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:create" + } + ] + }, + { + "action": { + "name": "consistencygroup:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:delete" + } + ] + }, + { + "action": { + "name": "consistencygroup:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:update" + } + ] + }, + { + "action": { + "name": "consistencygroup:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get" + } + ] + }, + { + "action": { + "name": "consistencygroup:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get_all" + } + ] + }, + { + "action": { + "name": "consistencygroup:create_cgsnapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:create_cgsnapshot" + } + ] + }, + { + "action": { + "name": "consistencygroup:delete_cgsnapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:delete_cgsnapshot" + } + ] + }, + { + "action": { + "name": "consistencygroup:get_cgsnapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get_cgsnapshot" + } + ] + }, + { + "action": { + "name": "consistencygroup:get_all_cgsnapshots" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "consistencygroup:get_all_cgsnapshots" + } + ] + }, + { + "action": { + "name": "scheduler_extension:scheduler_stats:get_pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "scheduler_extension:scheduler_stats:get_pools" + } + ] + } + ], + "meta_rules": [ + { + "name": "rbac", + "description": "", + "subject_categories": [ + { + "name": "role" + } + ], + "object_categories": [ + { + "name": "id" + } + ], + "action_categories": [ + { + "name": "action_id" + } + ] + } + ], + "rules": [ + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_volume_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete_volume_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_volume_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_volume_admin_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_volume_admin_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_all_snapshots" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:create_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:extend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update_readonly_flag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:retype" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:types_manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:types_extra_specs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:access_types_qos_specs_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:access_types_extra_specs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_access:addProjectAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_access:removeProjectAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_type_encryption" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_encryption_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:extended_snapshot_attributes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_image_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quotas:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quotas:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quotas:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quota_classes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:quota_classes:validate_setup_for_nested_quota_use" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:reset_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:snapshot_admin_actions:reset_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:backup_admin_actions:reset_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:force_detach" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:snapshot_admin_actions:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:backup_admin_actions:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_admin_actions:migrate_volume_completion" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_host_attribute" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_tenant_attribute" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_mig_status_attribute" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:hosts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:services:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:services:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:volume_unmanage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:capabilities" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:create_transfer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:accept_transfer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:delete_transfer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:get_all_transfers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:replication:promote" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume_extension:replication:reenable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:enable_replication" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:disable_replication" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:failover_replication" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "volume:list_replication_targets" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:restore" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:backup-import" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "backup:backup-export" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "snapshot_extension:snapshot_actions:update_snapshot_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "snapshot_extension:snapshot_manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "snapshot_extension:snapshot_unmanage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:create_cgsnapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:delete_cgsnapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get_cgsnapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "consistencygroup:get_all_cgsnapshots" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "scheduler_extension:scheduler_stats:get_pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + } + ] +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/opst_rbac_glance.json b/moon_engine/tests/func_policies/opst_rbac_glance.json new file mode 100644 index 00000000..276d1e3b --- /dev/null +++ b/moon_engine/tests/func_policies/opst_rbac_glance.json @@ -0,0 +1,2918 @@ +{ + "policies": [ + { + "name": "OpenStack RBAC Policy", + "genre": "authz", + "description": "A RBAC policy similar of what you can find through policy.json files", + "model": { + "name": "OPST_RBAC" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "OPST_RBAC", + "description": "", + "meta_rules": [ + { + "name": "rbac" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "a role in OpenStack" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "the admin role", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "member", + "description": "the member role", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": { + "name": "admin" + }, + "category": { + "name": "role" + }, + "assignments": [ + { + "name": "admin" + }, + { + "name": "member" + } + ] + } + ], + "objects": [ + { + "name": "all", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "the UID of each virtual machine" + } + ], + "object_data": [ + { + "name": "all", + "description": "represents all virtual machines in this project", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": { + "name": "all" + }, + "category": { + "name": "id" + }, + "assignments": [ + { + "name": "all" + } + ] + } + ], + "actions": [ + { + "name": "add_image", + "description": "add_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "delete_image", + "description": "delete_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_image", + "description": "get_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_images", + "description": "get_images action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_image", + "description": "modify_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "publicize_image", + "description": "publicize_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "communitize_image", + "description": "communitize_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "copy_from", + "description": "copy_from action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "download_image", + "description": "download_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "upload_image", + "description": "upload_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "delete_image_location", + "description": "delete_image_location action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_image_location", + "description": "get_image_location action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "set_image_location", + "description": "set_image_location action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_member", + "description": "add_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "delete_member", + "description": "delete_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_member", + "description": "get_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_members", + "description": "get_members action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_member", + "description": "modify_member action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "manage_image_cache", + "description": "manage_image_cache action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_task", + "description": "get_task action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_tasks", + "description": "get_tasks action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_task", + "description": "add_task action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_task", + "description": "modify_task action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "tasks_api_access", + "description": "tasks_api_access action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "deactivate", + "description": "deactivate action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "reactivate", + "description": "reactivate action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_namespace", + "description": "get_metadef_namespace action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_namespaces", + "description": "get_metadef_namespaces action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_namespace", + "description": "modify_metadef_namespace action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_namespace", + "description": "add_metadef_namespace action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_object", + "description": "get_metadef_object action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_objects", + "description": "get_metadef_objects action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_object", + "description": "modify_metadef_object action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_object", + "description": "add_metadef_object action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "list_metadef_resource_types", + "description": "list_metadef_resource_types action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_resource_type", + "description": "get_metadef_resource_type action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_resource_type_association", + "description": "add_metadef_resource_type_association action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_property", + "description": "get_metadef_property action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_properties", + "description": "get_metadef_properties action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_property", + "description": "modify_metadef_property action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_property", + "description": "add_metadef_property action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_tag", + "description": "get_metadef_tag action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_metadef_tags", + "description": "get_metadef_tags action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "modify_metadef_tag", + "description": "modify_metadef_tag action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_tag", + "description": "add_metadef_tag action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "add_metadef_tags", + "description": "add_metadef_tags action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "action_id", + "description": "" + } + ], + "action_data": [ + { + "name": "add_image", + "description": "add_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_image", + "description": "delete_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_image", + "description": "get_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_images", + "description": "get_images action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_image", + "description": "modify_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "publicize_image", + "description": "publicize_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "communitize_image", + "description": "communitize_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "copy_from", + "description": "copy_from action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "download_image", + "description": "download_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "upload_image", + "description": "upload_image action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_image_location", + "description": "delete_image_location action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_image_location", + "description": "get_image_location action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "set_image_location", + "description": "set_image_location action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_member", + "description": "add_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "delete_member", + "description": "delete_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_member", + "description": "get_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_members", + "description": "get_members action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_member", + "description": "modify_member action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "manage_image_cache", + "description": "manage_image_cache action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_task", + "description": "get_task action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_tasks", + "description": "get_tasks action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_task", + "description": "add_task action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_task", + "description": "modify_task action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "tasks_api_access", + "description": "tasks_api_access action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "deactivate", + "description": "deactivate action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "reactivate", + "description": "reactivate action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_namespace", + "description": "get_metadef_namespace action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_namespaces", + "description": "get_metadef_namespaces action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_namespace", + "description": "modify_metadef_namespace action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_namespace", + "description": "add_metadef_namespace action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_object", + "description": "get_metadef_object action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_objects", + "description": "get_metadef_objects action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_object", + "description": "modify_metadef_object action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_object", + "description": "add_metadef_object action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "list_metadef_resource_types", + "description": "list_metadef_resource_types action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_resource_type", + "description": "get_metadef_resource_type action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_resource_type_association", + "description": "add_metadef_resource_type_association action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_property", + "description": "get_metadef_property action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_properties", + "description": "get_metadef_properties action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_property", + "description": "modify_metadef_property action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_property", + "description": "add_metadef_property action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_tag", + "description": "get_metadef_tag action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_metadef_tags", + "description": "get_metadef_tags action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "modify_metadef_tag", + "description": "modify_metadef_tag action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_tag", + "description": "add_metadef_tag action for glance", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "add_metadef_tags", + "description": "add_metadef_tags action for glance", + "policies": [], + "category": { + "name": "action_id" + } + } + ], + "action_assignments": [ + { + "action": { + "name": "add_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_image" + } + ] + }, + { + "action": { + "name": "delete_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_image" + } + ] + }, + { + "action": { + "name": "get_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_image" + } + ] + }, + { + "action": { + "name": "get_images" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_images" + } + ] + }, + { + "action": { + "name": "modify_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_image" + } + ] + }, + { + "action": { + "name": "publicize_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "publicize_image" + } + ] + }, + { + "action": { + "name": "communitize_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "communitize_image" + } + ] + }, + { + "action": { + "name": "copy_from" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "copy_from" + } + ] + }, + { + "action": { + "name": "download_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "download_image" + } + ] + }, + { + "action": { + "name": "upload_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "upload_image" + } + ] + }, + { + "action": { + "name": "delete_image_location" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_image_location" + } + ] + }, + { + "action": { + "name": "get_image_location" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_image_location" + } + ] + }, + { + "action": { + "name": "set_image_location" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "set_image_location" + } + ] + }, + { + "action": { + "name": "add_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_member" + } + ] + }, + { + "action": { + "name": "delete_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "delete_member" + } + ] + }, + { + "action": { + "name": "get_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_member" + } + ] + }, + { + "action": { + "name": "get_members" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_members" + } + ] + }, + { + "action": { + "name": "modify_member" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_member" + } + ] + }, + { + "action": { + "name": "manage_image_cache" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "manage_image_cache" + } + ] + }, + { + "action": { + "name": "get_task" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_task" + } + ] + }, + { + "action": { + "name": "get_tasks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_tasks" + } + ] + }, + { + "action": { + "name": "add_task" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_task" + } + ] + }, + { + "action": { + "name": "modify_task" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_task" + } + ] + }, + { + "action": { + "name": "tasks_api_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "tasks_api_access" + } + ] + }, + { + "action": { + "name": "deactivate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "deactivate" + } + ] + }, + { + "action": { + "name": "reactivate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "reactivate" + } + ] + }, + { + "action": { + "name": "get_metadef_namespace" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_namespace" + } + ] + }, + { + "action": { + "name": "get_metadef_namespaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_namespaces" + } + ] + }, + { + "action": { + "name": "modify_metadef_namespace" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_namespace" + } + ] + }, + { + "action": { + "name": "add_metadef_namespace" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_namespace" + } + ] + }, + { + "action": { + "name": "get_metadef_object" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_object" + } + ] + }, + { + "action": { + "name": "get_metadef_objects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_objects" + } + ] + }, + { + "action": { + "name": "modify_metadef_object" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_object" + } + ] + }, + { + "action": { + "name": "add_metadef_object" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_object" + } + ] + }, + { + "action": { + "name": "list_metadef_resource_types" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "list_metadef_resource_types" + } + ] + }, + { + "action": { + "name": "get_metadef_resource_type" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_resource_type" + } + ] + }, + { + "action": { + "name": "add_metadef_resource_type_association" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_resource_type_association" + } + ] + }, + { + "action": { + "name": "get_metadef_property" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_property" + } + ] + }, + { + "action": { + "name": "get_metadef_properties" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_properties" + } + ] + }, + { + "action": { + "name": "modify_metadef_property" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_property" + } + ] + }, + { + "action": { + "name": "add_metadef_property" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_property" + } + ] + }, + { + "action": { + "name": "get_metadef_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_tag" + } + ] + }, + { + "action": { + "name": "get_metadef_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_metadef_tags" + } + ] + }, + { + "action": { + "name": "modify_metadef_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "modify_metadef_tag" + } + ] + }, + { + "action": { + "name": "add_metadef_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_tag" + } + ] + }, + { + "action": { + "name": "add_metadef_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "add_metadef_tags" + } + ] + } + ], + "meta_rules": [ + { + "name": "rbac", + "description": "", + "subject_categories": [ + { + "name": "role" + } + ], + "object_categories": [ + { + "name": "id" + } + ], + "action_categories": [ + { + "name": "action_id" + } + ] + } + ], + "rules": [ + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "delete_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_images" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "modify_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "publicize_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "communitize_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "copy_from" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "download_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "upload_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "delete_image_location" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_image_location" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "set_image_location" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "delete_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_members" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "modify_member" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "manage_image_cache" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_task" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_tasks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_task" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "modify_task" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "tasks_api_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "deactivate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "reactivate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_namespace" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_namespaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "modify_metadef_namespace" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_metadef_namespace" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_object" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_objects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "modify_metadef_object" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_metadef_object" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "list_metadef_resource_types" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_resource_type" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_metadef_resource_type_association" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_property" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_properties" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "modify_metadef_property" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_metadef_property" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "get_metadef_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "modify_metadef_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_metadef_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all" + } + ], + "action_data": [ + { + "name": "add_metadef_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + } + ] +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/opst_rbac_keystone.json b/moon_engine/tests/func_policies/opst_rbac_keystone.json new file mode 100644 index 00000000..6ccf975f --- /dev/null +++ b/moon_engine/tests/func_policies/opst_rbac_keystone.json @@ -0,0 +1,12998 @@ +{ + "policies": [ + { + "name": "OpenStack RBAC Policy", + "genre": "authz", + "description": "A RBAC policy similar of what you can find through policy.json files", + "model": { + "name": "OPST_RBAC" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "OPST_RBAC", + "description": "", + "meta_rules": [ + { + "name": "rbac" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "a role in OpenStack" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "the admin role", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "member", + "description": "the member role", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": { + "name": "admin" + }, + "category": { + "name": "role" + }, + "assignments": [ + { + "name": "admin" + }, + { + "name": "member" + } + ] + } + ], + "objects": [ + { + "name": "all_vm", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "the UID of each virtual machine" + } + ], + "object_data": [ + { + "name": "all_vm", + "description": "represents all virtual machines in this project", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": { + "name": "all_vm" + }, + "category": { + "name": "id" + }, + "assignments": [ + { + "name": "all_vm" + } + ] + } + ], + "actions": [ + { + "name": "identity:get_region", + "description": "identity:get_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_regions", + "description": "identity:list_regions action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_region", + "description": "identity:create_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_region", + "description": "identity:update_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_region", + "description": "identity:delete_region action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_service", + "description": "identity:get_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_services", + "description": "identity:list_services action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_service", + "description": "identity:create_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_service", + "description": "identity:update_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_service", + "description": "identity:delete_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_endpoint", + "description": "identity:get_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints", + "description": "identity:list_endpoints action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_endpoint", + "description": "identity:create_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_endpoint", + "description": "identity:update_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_endpoint", + "description": "identity:delete_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_registered_limit", + "description": "identity:get_registered_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_registered_limits", + "description": "identity:list_registered_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_registered_limits", + "description": "identity:create_registered_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_registered_limits", + "description": "identity:update_registered_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_registered_limit", + "description": "identity:delete_registered_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_limit", + "description": "identity:get_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_limits", + "description": "identity:list_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_limits", + "description": "identity:create_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_limits", + "description": "identity:update_limits action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_limit", + "description": "identity:delete_limit action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain", + "description": "identity:get_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_domains", + "description": "identity:list_domains action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_domain", + "description": "identity:create_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_domain", + "description": "identity:update_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_domain", + "description": "identity:delete_domain action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_target_project_domain_id", + "description": "admin_and_matching_target_project_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_project_domain_id", + "description": "admin_and_matching_project_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_project", + "description": "identity:get_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects", + "description": "identity:list_projects action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_user_projects", + "description": "identity:list_user_projects action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_project", + "description": "identity:create_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_project", + "description": "identity:update_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_project", + "description": "identity:delete_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_project_tag", + "description": "identity:create_project_tag action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_project_tag", + "description": "identity:delete_project_tag action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_project_tag", + "description": "identity:get_project_tag action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_project_tags", + "description": "identity:list_project_tags action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_project_tags", + "description": "identity:delete_project_tags action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_project_tags", + "description": "identity:update_project_tags action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_target_user_domain_id", + "description": "admin_and_matching_target_user_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_user_domain_id", + "description": "admin_and_matching_user_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_user", + "description": "identity:get_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_users", + "description": "identity:list_users action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_user", + "description": "identity:create_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_user", + "description": "identity:update_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_user", + "description": "identity:delete_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_target_group_domain_id", + "description": "admin_and_matching_target_group_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_group_domain_id", + "description": "admin_and_matching_group_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_group", + "description": "identity:get_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_groups", + "description": "identity:list_groups action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_groups_for_user", + "description": "identity:list_groups_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_group", + "description": "identity:create_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_group", + "description": "identity:update_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_group", + "description": "identity:delete_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_users_in_group", + "description": "identity:list_users_in_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:remove_user_from_group", + "description": "identity:remove_user_from_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_user_in_group", + "description": "identity:check_user_in_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:add_user_to_group", + "description": "identity:add_user_to_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_credential", + "description": "identity:get_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_credentials", + "description": "identity:list_credentials action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_credential", + "description": "identity:create_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_credential", + "description": "identity:update_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_credential", + "description": "identity:delete_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_get_credential", + "description": "identity:ec2_get_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_list_credentials", + "description": "identity:ec2_list_credentials action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_create_credential", + "description": "identity:ec2_create_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:ec2_delete_credential", + "description": "identity:ec2_delete_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_role", + "description": "identity:get_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_roles", + "description": "identity:list_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_role", + "description": "identity:create_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_role", + "description": "identity:update_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_role", + "description": "identity:delete_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain_role", + "description": "identity:get_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_domain_roles", + "description": "identity:list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_domain_role", + "description": "identity:create_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_domain_role", + "description": "identity:update_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_domain_role", + "description": "identity:delete_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_matches_domain_role", + "description": "domain_admin_matches_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "get_domain_roles", + "description": "get_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_matches_target_domain_role", + "description": "domain_admin_matches_target_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_matches_target_domain_role", + "description": "project_admin_matches_target_domain_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "list_domain_roles", + "description": "list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_matches_filter_on_list_domain_roles", + "description": "domain_admin_matches_filter_on_list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_matches_filter_on_list_domain_roles", + "description": "project_admin_matches_filter_on_list_domain_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_and_matching_prior_role_domain_id", + "description": "admin_and_matching_prior_role_domain_id action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "implied_role_matches_prior_role_domain_or_global", + "description": "implied_role_matches_prior_role_domain_or_global action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_implied_role", + "description": "identity:get_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_implied_roles", + "description": "identity:list_implied_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_implied_role", + "description": "identity:create_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_implied_role", + "description": "identity:delete_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_role_inference_rules", + "description": "identity:list_role_inference_rules action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_implied_role", + "description": "identity:check_implied_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_system_grants_for_user", + "description": "identity:list_system_grants_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_system_grant_for_user", + "description": "identity:check_system_grant_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_system_grant_for_user", + "description": "identity:create_system_grant_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_system_grant_for_user", + "description": "identity:revoke_system_grant_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_system_grants_for_group", + "description": "identity:list_system_grants_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_system_grant_for_group", + "description": "identity:check_system_grant_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_system_grant_for_group", + "description": "identity:create_system_grant_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_system_grant_for_group", + "description": "identity:revoke_system_grant_for_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_grant", + "description": "identity:check_grant action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_grants", + "description": "identity:list_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_grant", + "description": "identity:create_grant action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_grant", + "description": "identity:revoke_grant action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_grants", + "description": "domain_admin_for_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_global_role_grants", + "description": "domain_admin_for_global_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_domain_role_grants", + "description": "domain_admin_for_domain_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_grant_match", + "description": "domain_admin_grant_match action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_grants", + "description": "project_admin_for_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_global_role_grants", + "description": "project_admin_for_global_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_domain_role_grants", + "description": "project_admin_for_domain_role_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "domain_admin_for_list_grants", + "description": "domain_admin_for_list_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "project_admin_for_list_grants", + "description": "project_admin_for_list_grants action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_on_domain_filter", + "description": "admin_on_domain_filter action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_on_project_filter", + "description": "admin_on_project_filter action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "admin_on_domain_of_project_filter", + "description": "admin_on_domain_of_project_filter action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_role_assignments", + "description": "identity:list_role_assignments action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_role_assignments_for_tree", + "description": "identity:list_role_assignments_for_tree action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_policy", + "description": "identity:get_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_policies", + "description": "identity:list_policies action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy", + "description": "identity:create_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_policy", + "description": "identity:update_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy", + "description": "identity:delete_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_token", + "description": "identity:check_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:validate_token", + "description": "identity:validate_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:validate_token_head", + "description": "identity:validate_token_head action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revocation_list", + "description": "identity:revocation_list action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:revoke_token", + "description": "identity:revoke_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_trust", + "description": "identity:create_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_trusts", + "description": "identity:list_trusts action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_roles_for_trust", + "description": "identity:list_roles_for_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_role_for_trust", + "description": "identity:get_role_for_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_trust", + "description": "identity:delete_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_trust", + "description": "identity:get_trust action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_consumer", + "description": "identity:create_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_consumer", + "description": "identity:get_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_consumers", + "description": "identity:list_consumers action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_consumer", + "description": "identity:delete_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_consumer", + "description": "identity:update_consumer action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:authorize_request_token", + "description": "identity:authorize_request_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_access_token_roles", + "description": "identity:list_access_token_roles action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_access_token_role", + "description": "identity:get_access_token_role action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_access_tokens", + "description": "identity:list_access_tokens action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_access_token", + "description": "identity:get_access_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_access_token", + "description": "identity:delete_access_token action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects_for_endpoint", + "description": "identity:list_projects_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:add_endpoint_to_project", + "description": "identity:add_endpoint_to_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_endpoint_in_project", + "description": "identity:check_endpoint_in_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints_for_project", + "description": "identity:list_endpoints_for_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:remove_endpoint_from_project", + "description": "identity:remove_endpoint_from_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_endpoint_group", + "description": "identity:create_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoint_groups", + "description": "identity:list_endpoint_groups action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_endpoint_group", + "description": "identity:get_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_endpoint_group", + "description": "identity:update_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_endpoint_group", + "description": "identity:delete_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects_associated_with_endpoint_group", + "description": "identity:list_projects_associated_with_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints_associated_with_endpoint_group", + "description": "identity:list_endpoints_associated_with_endpoint_group action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_endpoint_group_in_project", + "description": "identity:get_endpoint_group_in_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoint_groups_for_project", + "description": "identity:list_endpoint_groups_for_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:add_endpoint_group_to_project", + "description": "identity:add_endpoint_group_to_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:remove_endpoint_group_from_project", + "description": "identity:remove_endpoint_group_from_project action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_identity_provider", + "description": "identity:create_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_identity_providers", + "description": "identity:list_identity_providers action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_identity_provider", + "description": "identity:get_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_identity_provider", + "description": "identity:update_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_identity_provider", + "description": "identity:delete_identity_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_protocol", + "description": "identity:create_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_protocol", + "description": "identity:update_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_protocol", + "description": "identity:get_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_protocols", + "description": "identity:list_protocols action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_protocol", + "description": "identity:delete_protocol action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_mapping", + "description": "identity:create_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_mapping", + "description": "identity:get_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_mappings", + "description": "identity:list_mappings action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_mapping", + "description": "identity:delete_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_mapping", + "description": "identity:update_mapping action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_service_provider", + "description": "identity:create_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_service_providers", + "description": "identity:list_service_providers action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_service_provider", + "description": "identity:get_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_service_provider", + "description": "identity:update_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_service_provider", + "description": "identity:delete_service_provider action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_catalog", + "description": "identity:get_auth_catalog action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_projects", + "description": "identity:get_auth_projects action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_domains", + "description": "identity:get_auth_domains action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_auth_system", + "description": "identity:get_auth_system action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_projects_for_user", + "description": "identity:list_projects_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_domains_for_user", + "description": "identity:list_domains_for_user action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_revoke_events", + "description": "identity:list_revoke_events action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy_association_for_endpoint", + "description": "identity:create_policy_association_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_policy_association_for_endpoint", + "description": "identity:check_policy_association_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy_association_for_endpoint", + "description": "identity:delete_policy_association_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy_association_for_service", + "description": "identity:create_policy_association_for_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_policy_association_for_service", + "description": "identity:check_policy_association_for_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy_association_for_service", + "description": "identity:delete_policy_association_for_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_policy_association_for_region_and_service", + "description": "identity:create_policy_association_for_region_and_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:check_policy_association_for_region_and_service", + "description": "identity:check_policy_association_for_region_and_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_policy_association_for_region_and_service", + "description": "identity:delete_policy_association_for_region_and_service action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_policy_for_endpoint", + "description": "identity:get_policy_for_endpoint action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_endpoints_for_policy", + "description": "identity:list_endpoints_for_policy action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_domain_config", + "description": "identity:create_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain_config", + "description": "identity:get_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_security_compliance_domain_config", + "description": "identity:get_security_compliance_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:update_domain_config", + "description": "identity:update_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_domain_config", + "description": "identity:delete_domain_config action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_domain_config_default", + "description": "identity:get_domain_config_default action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:get_application_credential", + "description": "identity:get_application_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:list_application_credentials", + "description": "identity:list_application_credentials action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:create_application_credential", + "description": "identity:create_application_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + }, + { + "name": "identity:delete_application_credential", + "description": "identity:delete_application_credential action for keystone", + "extra": { + "component": "keystone" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "action_id", + "description": "" + } + ], + "action_data": [ + { + "name": "identity:get_region", + "description": "identity:get_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_regions", + "description": "identity:list_regions action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_region", + "description": "identity:create_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_region", + "description": "identity:update_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_region", + "description": "identity:delete_region action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_service", + "description": "identity:get_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_services", + "description": "identity:list_services action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_service", + "description": "identity:create_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_service", + "description": "identity:update_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_service", + "description": "identity:delete_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_endpoint", + "description": "identity:get_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints", + "description": "identity:list_endpoints action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_endpoint", + "description": "identity:create_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_endpoint", + "description": "identity:update_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_endpoint", + "description": "identity:delete_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_registered_limit", + "description": "identity:get_registered_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_registered_limits", + "description": "identity:list_registered_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_registered_limits", + "description": "identity:create_registered_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_registered_limits", + "description": "identity:update_registered_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_registered_limit", + "description": "identity:delete_registered_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_limit", + "description": "identity:get_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_limits", + "description": "identity:list_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_limits", + "description": "identity:create_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_limits", + "description": "identity:update_limits action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_limit", + "description": "identity:delete_limit action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain", + "description": "identity:get_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_domains", + "description": "identity:list_domains action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_domain", + "description": "identity:create_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_domain", + "description": "identity:update_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_domain", + "description": "identity:delete_domain action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_target_project_domain_id", + "description": "admin_and_matching_target_project_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_project_domain_id", + "description": "admin_and_matching_project_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_project", + "description": "identity:get_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects", + "description": "identity:list_projects action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_user_projects", + "description": "identity:list_user_projects action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_project", + "description": "identity:create_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_project", + "description": "identity:update_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_project", + "description": "identity:delete_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_project_tag", + "description": "identity:create_project_tag action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_project_tag", + "description": "identity:delete_project_tag action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_project_tag", + "description": "identity:get_project_tag action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_project_tags", + "description": "identity:list_project_tags action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_project_tags", + "description": "identity:delete_project_tags action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_project_tags", + "description": "identity:update_project_tags action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_target_user_domain_id", + "description": "admin_and_matching_target_user_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_user_domain_id", + "description": "admin_and_matching_user_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_user", + "description": "identity:get_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_users", + "description": "identity:list_users action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_user", + "description": "identity:create_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_user", + "description": "identity:update_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_user", + "description": "identity:delete_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_target_group_domain_id", + "description": "admin_and_matching_target_group_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_group_domain_id", + "description": "admin_and_matching_group_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_group", + "description": "identity:get_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_groups", + "description": "identity:list_groups action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_groups_for_user", + "description": "identity:list_groups_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_group", + "description": "identity:create_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_group", + "description": "identity:update_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_group", + "description": "identity:delete_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_users_in_group", + "description": "identity:list_users_in_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:remove_user_from_group", + "description": "identity:remove_user_from_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_user_in_group", + "description": "identity:check_user_in_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:add_user_to_group", + "description": "identity:add_user_to_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_credential", + "description": "identity:get_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_credentials", + "description": "identity:list_credentials action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_credential", + "description": "identity:create_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_credential", + "description": "identity:update_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_credential", + "description": "identity:delete_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_get_credential", + "description": "identity:ec2_get_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_list_credentials", + "description": "identity:ec2_list_credentials action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_create_credential", + "description": "identity:ec2_create_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:ec2_delete_credential", + "description": "identity:ec2_delete_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_role", + "description": "identity:get_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_roles", + "description": "identity:list_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_role", + "description": "identity:create_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_role", + "description": "identity:update_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_role", + "description": "identity:delete_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain_role", + "description": "identity:get_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_domain_roles", + "description": "identity:list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_domain_role", + "description": "identity:create_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_domain_role", + "description": "identity:update_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_domain_role", + "description": "identity:delete_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_matches_domain_role", + "description": "domain_admin_matches_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "get_domain_roles", + "description": "get_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_matches_target_domain_role", + "description": "domain_admin_matches_target_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_matches_target_domain_role", + "description": "project_admin_matches_target_domain_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "list_domain_roles", + "description": "list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_matches_filter_on_list_domain_roles", + "description": "domain_admin_matches_filter_on_list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_matches_filter_on_list_domain_roles", + "description": "project_admin_matches_filter_on_list_domain_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_and_matching_prior_role_domain_id", + "description": "admin_and_matching_prior_role_domain_id action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "implied_role_matches_prior_role_domain_or_global", + "description": "implied_role_matches_prior_role_domain_or_global action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_implied_role", + "description": "identity:get_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_implied_roles", + "description": "identity:list_implied_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_implied_role", + "description": "identity:create_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_implied_role", + "description": "identity:delete_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_role_inference_rules", + "description": "identity:list_role_inference_rules action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_implied_role", + "description": "identity:check_implied_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_system_grants_for_user", + "description": "identity:list_system_grants_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_system_grant_for_user", + "description": "identity:check_system_grant_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_system_grant_for_user", + "description": "identity:create_system_grant_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_system_grant_for_user", + "description": "identity:revoke_system_grant_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_system_grants_for_group", + "description": "identity:list_system_grants_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_system_grant_for_group", + "description": "identity:check_system_grant_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_system_grant_for_group", + "description": "identity:create_system_grant_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_system_grant_for_group", + "description": "identity:revoke_system_grant_for_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_grant", + "description": "identity:check_grant action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_grants", + "description": "identity:list_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_grant", + "description": "identity:create_grant action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_grant", + "description": "identity:revoke_grant action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_grants", + "description": "domain_admin_for_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_global_role_grants", + "description": "domain_admin_for_global_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_domain_role_grants", + "description": "domain_admin_for_domain_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_grant_match", + "description": "domain_admin_grant_match action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_grants", + "description": "project_admin_for_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_global_role_grants", + "description": "project_admin_for_global_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_domain_role_grants", + "description": "project_admin_for_domain_role_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "domain_admin_for_list_grants", + "description": "domain_admin_for_list_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "project_admin_for_list_grants", + "description": "project_admin_for_list_grants action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_on_domain_filter", + "description": "admin_on_domain_filter action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_on_project_filter", + "description": "admin_on_project_filter action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "admin_on_domain_of_project_filter", + "description": "admin_on_domain_of_project_filter action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_role_assignments", + "description": "identity:list_role_assignments action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_role_assignments_for_tree", + "description": "identity:list_role_assignments_for_tree action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_policy", + "description": "identity:get_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_policies", + "description": "identity:list_policies action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy", + "description": "identity:create_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_policy", + "description": "identity:update_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy", + "description": "identity:delete_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_token", + "description": "identity:check_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:validate_token", + "description": "identity:validate_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:validate_token_head", + "description": "identity:validate_token_head action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revocation_list", + "description": "identity:revocation_list action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:revoke_token", + "description": "identity:revoke_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_trust", + "description": "identity:create_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_trusts", + "description": "identity:list_trusts action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_roles_for_trust", + "description": "identity:list_roles_for_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_role_for_trust", + "description": "identity:get_role_for_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_trust", + "description": "identity:delete_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_trust", + "description": "identity:get_trust action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_consumer", + "description": "identity:create_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_consumer", + "description": "identity:get_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_consumers", + "description": "identity:list_consumers action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_consumer", + "description": "identity:delete_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_consumer", + "description": "identity:update_consumer action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:authorize_request_token", + "description": "identity:authorize_request_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_access_token_roles", + "description": "identity:list_access_token_roles action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_access_token_role", + "description": "identity:get_access_token_role action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_access_tokens", + "description": "identity:list_access_tokens action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_access_token", + "description": "identity:get_access_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_access_token", + "description": "identity:delete_access_token action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects_for_endpoint", + "description": "identity:list_projects_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:add_endpoint_to_project", + "description": "identity:add_endpoint_to_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_endpoint_in_project", + "description": "identity:check_endpoint_in_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints_for_project", + "description": "identity:list_endpoints_for_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:remove_endpoint_from_project", + "description": "identity:remove_endpoint_from_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_endpoint_group", + "description": "identity:create_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoint_groups", + "description": "identity:list_endpoint_groups action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_endpoint_group", + "description": "identity:get_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_endpoint_group", + "description": "identity:update_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_endpoint_group", + "description": "identity:delete_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects_associated_with_endpoint_group", + "description": "identity:list_projects_associated_with_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints_associated_with_endpoint_group", + "description": "identity:list_endpoints_associated_with_endpoint_group action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_endpoint_group_in_project", + "description": "identity:get_endpoint_group_in_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoint_groups_for_project", + "description": "identity:list_endpoint_groups_for_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:add_endpoint_group_to_project", + "description": "identity:add_endpoint_group_to_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:remove_endpoint_group_from_project", + "description": "identity:remove_endpoint_group_from_project action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_identity_provider", + "description": "identity:create_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_identity_providers", + "description": "identity:list_identity_providers action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_identity_provider", + "description": "identity:get_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_identity_provider", + "description": "identity:update_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_identity_provider", + "description": "identity:delete_identity_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_protocol", + "description": "identity:create_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_protocol", + "description": "identity:update_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_protocol", + "description": "identity:get_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_protocols", + "description": "identity:list_protocols action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_protocol", + "description": "identity:delete_protocol action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_mapping", + "description": "identity:create_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_mapping", + "description": "identity:get_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_mappings", + "description": "identity:list_mappings action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_mapping", + "description": "identity:delete_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_mapping", + "description": "identity:update_mapping action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_service_provider", + "description": "identity:create_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_service_providers", + "description": "identity:list_service_providers action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_service_provider", + "description": "identity:get_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_service_provider", + "description": "identity:update_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_service_provider", + "description": "identity:delete_service_provider action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_catalog", + "description": "identity:get_auth_catalog action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_projects", + "description": "identity:get_auth_projects action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_domains", + "description": "identity:get_auth_domains action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_auth_system", + "description": "identity:get_auth_system action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_projects_for_user", + "description": "identity:list_projects_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_domains_for_user", + "description": "identity:list_domains_for_user action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_revoke_events", + "description": "identity:list_revoke_events action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy_association_for_endpoint", + "description": "identity:create_policy_association_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_policy_association_for_endpoint", + "description": "identity:check_policy_association_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy_association_for_endpoint", + "description": "identity:delete_policy_association_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy_association_for_service", + "description": "identity:create_policy_association_for_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_policy_association_for_service", + "description": "identity:check_policy_association_for_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy_association_for_service", + "description": "identity:delete_policy_association_for_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_policy_association_for_region_and_service", + "description": "identity:create_policy_association_for_region_and_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:check_policy_association_for_region_and_service", + "description": "identity:check_policy_association_for_region_and_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_policy_association_for_region_and_service", + "description": "identity:delete_policy_association_for_region_and_service action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_policy_for_endpoint", + "description": "identity:get_policy_for_endpoint action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_endpoints_for_policy", + "description": "identity:list_endpoints_for_policy action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_domain_config", + "description": "identity:create_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain_config", + "description": "identity:get_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_security_compliance_domain_config", + "description": "identity:get_security_compliance_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:update_domain_config", + "description": "identity:update_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_domain_config", + "description": "identity:delete_domain_config action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_domain_config_default", + "description": "identity:get_domain_config_default action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:get_application_credential", + "description": "identity:get_application_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:list_application_credentials", + "description": "identity:list_application_credentials action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:create_application_credential", + "description": "identity:create_application_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "identity:delete_application_credential", + "description": "identity:delete_application_credential action for keystone", + "policies": [], + "category": { + "name": "action_id" + } + } + ], + "action_assignments": [ + { + "action": { + "name": "identity:get_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_region" + } + ] + }, + { + "action": { + "name": "identity:list_regions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_regions" + } + ] + }, + { + "action": { + "name": "identity:create_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_region" + } + ] + }, + { + "action": { + "name": "identity:update_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_region" + } + ] + }, + { + "action": { + "name": "identity:delete_region" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_region" + } + ] + }, + { + "action": { + "name": "identity:get_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_service" + } + ] + }, + { + "action": { + "name": "identity:list_services" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_services" + } + ] + }, + { + "action": { + "name": "identity:create_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_service" + } + ] + }, + { + "action": { + "name": "identity:update_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_service" + } + ] + }, + { + "action": { + "name": "identity:delete_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_service" + } + ] + }, + { + "action": { + "name": "identity:get_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_endpoint" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints" + } + ] + }, + { + "action": { + "name": "identity:create_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_endpoint" + } + ] + }, + { + "action": { + "name": "identity:update_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_endpoint" + } + ] + }, + { + "action": { + "name": "identity:delete_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_endpoint" + } + ] + }, + { + "action": { + "name": "identity:get_registered_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_registered_limit" + } + ] + }, + { + "action": { + "name": "identity:list_registered_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_registered_limits" + } + ] + }, + { + "action": { + "name": "identity:create_registered_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_registered_limits" + } + ] + }, + { + "action": { + "name": "identity:update_registered_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_registered_limits" + } + ] + }, + { + "action": { + "name": "identity:delete_registered_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_registered_limit" + } + ] + }, + { + "action": { + "name": "identity:get_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_limit" + } + ] + }, + { + "action": { + "name": "identity:list_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_limits" + } + ] + }, + { + "action": { + "name": "identity:create_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_limits" + } + ] + }, + { + "action": { + "name": "identity:update_limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_limits" + } + ] + }, + { + "action": { + "name": "identity:delete_limit" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_limit" + } + ] + }, + { + "action": { + "name": "identity:get_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain" + } + ] + }, + { + "action": { + "name": "identity:list_domains" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_domains" + } + ] + }, + { + "action": { + "name": "identity:create_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_domain" + } + ] + }, + { + "action": { + "name": "identity:update_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_domain" + } + ] + }, + { + "action": { + "name": "identity:delete_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_domain" + } + ] + }, + { + "action": { + "name": "admin_and_matching_target_project_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_target_project_domain_id" + } + ] + }, + { + "action": { + "name": "admin_and_matching_project_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_project_domain_id" + } + ] + }, + { + "action": { + "name": "identity:get_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_project" + } + ] + }, + { + "action": { + "name": "identity:list_projects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects" + } + ] + }, + { + "action": { + "name": "identity:list_user_projects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_user_projects" + } + ] + }, + { + "action": { + "name": "identity:create_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_project" + } + ] + }, + { + "action": { + "name": "identity:update_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_project" + } + ] + }, + { + "action": { + "name": "identity:delete_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_project" + } + ] + }, + { + "action": { + "name": "identity:create_project_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_project_tag" + } + ] + }, + { + "action": { + "name": "identity:delete_project_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_project_tag" + } + ] + }, + { + "action": { + "name": "identity:get_project_tag" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_project_tag" + } + ] + }, + { + "action": { + "name": "identity:list_project_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_project_tags" + } + ] + }, + { + "action": { + "name": "identity:delete_project_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_project_tags" + } + ] + }, + { + "action": { + "name": "identity:update_project_tags" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_project_tags" + } + ] + }, + { + "action": { + "name": "admin_and_matching_target_user_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_target_user_domain_id" + } + ] + }, + { + "action": { + "name": "admin_and_matching_user_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_user_domain_id" + } + ] + }, + { + "action": { + "name": "identity:get_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_user" + } + ] + }, + { + "action": { + "name": "identity:list_users" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_users" + } + ] + }, + { + "action": { + "name": "identity:create_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_user" + } + ] + }, + { + "action": { + "name": "identity:update_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_user" + } + ] + }, + { + "action": { + "name": "identity:delete_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_user" + } + ] + }, + { + "action": { + "name": "admin_and_matching_target_group_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_target_group_domain_id" + } + ] + }, + { + "action": { + "name": "admin_and_matching_group_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_group_domain_id" + } + ] + }, + { + "action": { + "name": "identity:get_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_group" + } + ] + }, + { + "action": { + "name": "identity:list_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_groups" + } + ] + }, + { + "action": { + "name": "identity:list_groups_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_groups_for_user" + } + ] + }, + { + "action": { + "name": "identity:create_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_group" + } + ] + }, + { + "action": { + "name": "identity:update_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_group" + } + ] + }, + { + "action": { + "name": "identity:delete_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_group" + } + ] + }, + { + "action": { + "name": "identity:list_users_in_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_users_in_group" + } + ] + }, + { + "action": { + "name": "identity:remove_user_from_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:remove_user_from_group" + } + ] + }, + { + "action": { + "name": "identity:check_user_in_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_user_in_group" + } + ] + }, + { + "action": { + "name": "identity:add_user_to_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:add_user_to_group" + } + ] + }, + { + "action": { + "name": "identity:get_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_credential" + } + ] + }, + { + "action": { + "name": "identity:list_credentials" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_credentials" + } + ] + }, + { + "action": { + "name": "identity:create_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_credential" + } + ] + }, + { + "action": { + "name": "identity:update_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_credential" + } + ] + }, + { + "action": { + "name": "identity:delete_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_credential" + } + ] + }, + { + "action": { + "name": "identity:ec2_get_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_get_credential" + } + ] + }, + { + "action": { + "name": "identity:ec2_list_credentials" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_list_credentials" + } + ] + }, + { + "action": { + "name": "identity:ec2_create_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_create_credential" + } + ] + }, + { + "action": { + "name": "identity:ec2_delete_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:ec2_delete_credential" + } + ] + }, + { + "action": { + "name": "identity:get_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_role" + } + ] + }, + { + "action": { + "name": "identity:list_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_roles" + } + ] + }, + { + "action": { + "name": "identity:create_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_role" + } + ] + }, + { + "action": { + "name": "identity:update_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_role" + } + ] + }, + { + "action": { + "name": "identity:delete_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_role" + } + ] + }, + { + "action": { + "name": "identity:get_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain_role" + } + ] + }, + { + "action": { + "name": "identity:list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_domain_roles" + } + ] + }, + { + "action": { + "name": "identity:create_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_domain_role" + } + ] + }, + { + "action": { + "name": "identity:update_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_domain_role" + } + ] + }, + { + "action": { + "name": "identity:delete_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_domain_role" + } + ] + }, + { + "action": { + "name": "domain_admin_matches_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_matches_domain_role" + } + ] + }, + { + "action": { + "name": "get_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "get_domain_roles" + } + ] + }, + { + "action": { + "name": "domain_admin_matches_target_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_matches_target_domain_role" + } + ] + }, + { + "action": { + "name": "project_admin_matches_target_domain_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_matches_target_domain_role" + } + ] + }, + { + "action": { + "name": "list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "list_domain_roles" + } + ] + }, + { + "action": { + "name": "domain_admin_matches_filter_on_list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_matches_filter_on_list_domain_roles" + } + ] + }, + { + "action": { + "name": "project_admin_matches_filter_on_list_domain_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_matches_filter_on_list_domain_roles" + } + ] + }, + { + "action": { + "name": "admin_and_matching_prior_role_domain_id" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_and_matching_prior_role_domain_id" + } + ] + }, + { + "action": { + "name": "implied_role_matches_prior_role_domain_or_global" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "implied_role_matches_prior_role_domain_or_global" + } + ] + }, + { + "action": { + "name": "identity:get_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_implied_role" + } + ] + }, + { + "action": { + "name": "identity:list_implied_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_implied_roles" + } + ] + }, + { + "action": { + "name": "identity:create_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_implied_role" + } + ] + }, + { + "action": { + "name": "identity:delete_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_implied_role" + } + ] + }, + { + "action": { + "name": "identity:list_role_inference_rules" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_role_inference_rules" + } + ] + }, + { + "action": { + "name": "identity:check_implied_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_implied_role" + } + ] + }, + { + "action": { + "name": "identity:list_system_grants_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_system_grants_for_user" + } + ] + }, + { + "action": { + "name": "identity:check_system_grant_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_system_grant_for_user" + } + ] + }, + { + "action": { + "name": "identity:create_system_grant_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_system_grant_for_user" + } + ] + }, + { + "action": { + "name": "identity:revoke_system_grant_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_system_grant_for_user" + } + ] + }, + { + "action": { + "name": "identity:list_system_grants_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_system_grants_for_group" + } + ] + }, + { + "action": { + "name": "identity:check_system_grant_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_system_grant_for_group" + } + ] + }, + { + "action": { + "name": "identity:create_system_grant_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_system_grant_for_group" + } + ] + }, + { + "action": { + "name": "identity:revoke_system_grant_for_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_system_grant_for_group" + } + ] + }, + { + "action": { + "name": "identity:check_grant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_grant" + } + ] + }, + { + "action": { + "name": "identity:list_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_grants" + } + ] + }, + { + "action": { + "name": "identity:create_grant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_grant" + } + ] + }, + { + "action": { + "name": "identity:revoke_grant" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_grant" + } + ] + }, + { + "action": { + "name": "domain_admin_for_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_for_global_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_global_role_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_for_domain_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_domain_role_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_grant_match" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_grant_match" + } + ] + }, + { + "action": { + "name": "project_admin_for_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_grants" + } + ] + }, + { + "action": { + "name": "project_admin_for_global_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_global_role_grants" + } + ] + }, + { + "action": { + "name": "project_admin_for_domain_role_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_domain_role_grants" + } + ] + }, + { + "action": { + "name": "domain_admin_for_list_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "domain_admin_for_list_grants" + } + ] + }, + { + "action": { + "name": "project_admin_for_list_grants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "project_admin_for_list_grants" + } + ] + }, + { + "action": { + "name": "admin_on_domain_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_on_domain_filter" + } + ] + }, + { + "action": { + "name": "admin_on_project_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_on_project_filter" + } + ] + }, + { + "action": { + "name": "admin_on_domain_of_project_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "admin_on_domain_of_project_filter" + } + ] + }, + { + "action": { + "name": "identity:list_role_assignments" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_role_assignments" + } + ] + }, + { + "action": { + "name": "identity:list_role_assignments_for_tree" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_role_assignments_for_tree" + } + ] + }, + { + "action": { + "name": "identity:get_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_policy" + } + ] + }, + { + "action": { + "name": "identity:list_policies" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_policies" + } + ] + }, + { + "action": { + "name": "identity:create_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy" + } + ] + }, + { + "action": { + "name": "identity:update_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_policy" + } + ] + }, + { + "action": { + "name": "identity:delete_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy" + } + ] + }, + { + "action": { + "name": "identity:check_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_token" + } + ] + }, + { + "action": { + "name": "identity:validate_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:validate_token" + } + ] + }, + { + "action": { + "name": "identity:validate_token_head" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:validate_token_head" + } + ] + }, + { + "action": { + "name": "identity:revocation_list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revocation_list" + } + ] + }, + { + "action": { + "name": "identity:revoke_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:revoke_token" + } + ] + }, + { + "action": { + "name": "identity:create_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_trust" + } + ] + }, + { + "action": { + "name": "identity:list_trusts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_trusts" + } + ] + }, + { + "action": { + "name": "identity:list_roles_for_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_roles_for_trust" + } + ] + }, + { + "action": { + "name": "identity:get_role_for_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_role_for_trust" + } + ] + }, + { + "action": { + "name": "identity:delete_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_trust" + } + ] + }, + { + "action": { + "name": "identity:get_trust" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_trust" + } + ] + }, + { + "action": { + "name": "identity:create_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_consumer" + } + ] + }, + { + "action": { + "name": "identity:get_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_consumer" + } + ] + }, + { + "action": { + "name": "identity:list_consumers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_consumers" + } + ] + }, + { + "action": { + "name": "identity:delete_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_consumer" + } + ] + }, + { + "action": { + "name": "identity:update_consumer" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_consumer" + } + ] + }, + { + "action": { + "name": "identity:authorize_request_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:authorize_request_token" + } + ] + }, + { + "action": { + "name": "identity:list_access_token_roles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_access_token_roles" + } + ] + }, + { + "action": { + "name": "identity:get_access_token_role" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_access_token_role" + } + ] + }, + { + "action": { + "name": "identity:list_access_tokens" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_access_tokens" + } + ] + }, + { + "action": { + "name": "identity:get_access_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_access_token" + } + ] + }, + { + "action": { + "name": "identity:delete_access_token" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_access_token" + } + ] + }, + { + "action": { + "name": "identity:list_projects_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:add_endpoint_to_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:add_endpoint_to_project" + } + ] + }, + { + "action": { + "name": "identity:check_endpoint_in_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_endpoint_in_project" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints_for_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints_for_project" + } + ] + }, + { + "action": { + "name": "identity:remove_endpoint_from_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:remove_endpoint_from_project" + } + ] + }, + { + "action": { + "name": "identity:create_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:list_endpoint_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoint_groups" + } + ] + }, + { + "action": { + "name": "identity:get_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:update_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:delete_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:list_projects_associated_with_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects_associated_with_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints_associated_with_endpoint_group" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints_associated_with_endpoint_group" + } + ] + }, + { + "action": { + "name": "identity:get_endpoint_group_in_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_endpoint_group_in_project" + } + ] + }, + { + "action": { + "name": "identity:list_endpoint_groups_for_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoint_groups_for_project" + } + ] + }, + { + "action": { + "name": "identity:add_endpoint_group_to_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:add_endpoint_group_to_project" + } + ] + }, + { + "action": { + "name": "identity:remove_endpoint_group_from_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:remove_endpoint_group_from_project" + } + ] + }, + { + "action": { + "name": "identity:create_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:list_identity_providers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_identity_providers" + } + ] + }, + { + "action": { + "name": "identity:get_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:update_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:delete_identity_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_identity_provider" + } + ] + }, + { + "action": { + "name": "identity:create_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_protocol" + } + ] + }, + { + "action": { + "name": "identity:update_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_protocol" + } + ] + }, + { + "action": { + "name": "identity:get_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_protocol" + } + ] + }, + { + "action": { + "name": "identity:list_protocols" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_protocols" + } + ] + }, + { + "action": { + "name": "identity:delete_protocol" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_protocol" + } + ] + }, + { + "action": { + "name": "identity:create_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_mapping" + } + ] + }, + { + "action": { + "name": "identity:get_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_mapping" + } + ] + }, + { + "action": { + "name": "identity:list_mappings" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_mappings" + } + ] + }, + { + "action": { + "name": "identity:delete_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_mapping" + } + ] + }, + { + "action": { + "name": "identity:update_mapping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_mapping" + } + ] + }, + { + "action": { + "name": "identity:create_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_service_provider" + } + ] + }, + { + "action": { + "name": "identity:list_service_providers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_service_providers" + } + ] + }, + { + "action": { + "name": "identity:get_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_service_provider" + } + ] + }, + { + "action": { + "name": "identity:update_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_service_provider" + } + ] + }, + { + "action": { + "name": "identity:delete_service_provider" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_service_provider" + } + ] + }, + { + "action": { + "name": "identity:get_auth_catalog" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_catalog" + } + ] + }, + { + "action": { + "name": "identity:get_auth_projects" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_projects" + } + ] + }, + { + "action": { + "name": "identity:get_auth_domains" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_domains" + } + ] + }, + { + "action": { + "name": "identity:get_auth_system" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_auth_system" + } + ] + }, + { + "action": { + "name": "identity:list_projects_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_projects_for_user" + } + ] + }, + { + "action": { + "name": "identity:list_domains_for_user" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_domains_for_user" + } + ] + }, + { + "action": { + "name": "identity:list_revoke_events" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_revoke_events" + } + ] + }, + { + "action": { + "name": "identity:create_policy_association_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy_association_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:check_policy_association_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_policy_association_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:delete_policy_association_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy_association_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:create_policy_association_for_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy_association_for_service" + } + ] + }, + { + "action": { + "name": "identity:check_policy_association_for_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_policy_association_for_service" + } + ] + }, + { + "action": { + "name": "identity:delete_policy_association_for_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy_association_for_service" + } + ] + }, + { + "action": { + "name": "identity:create_policy_association_for_region_and_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_policy_association_for_region_and_service" + } + ] + }, + { + "action": { + "name": "identity:check_policy_association_for_region_and_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:check_policy_association_for_region_and_service" + } + ] + }, + { + "action": { + "name": "identity:delete_policy_association_for_region_and_service" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_policy_association_for_region_and_service" + } + ] + }, + { + "action": { + "name": "identity:get_policy_for_endpoint" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_policy_for_endpoint" + } + ] + }, + { + "action": { + "name": "identity:list_endpoints_for_policy" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_endpoints_for_policy" + } + ] + }, + { + "action": { + "name": "identity:create_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_domain_config" + } + ] + }, + { + "action": { + "name": "identity:get_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain_config" + } + ] + }, + { + "action": { + "name": "identity:get_security_compliance_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_security_compliance_domain_config" + } + ] + }, + { + "action": { + "name": "identity:update_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:update_domain_config" + } + ] + }, + { + "action": { + "name": "identity:delete_domain_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_domain_config" + } + ] + }, + { + "action": { + "name": "identity:get_domain_config_default" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_domain_config_default" + } + ] + }, + { + "action": { + "name": "identity:get_application_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:get_application_credential" + } + ] + }, + { + "action": { + "name": "identity:list_application_credentials" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:list_application_credentials" + } + ] + }, + { + "action": { + "name": "identity:create_application_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:create_application_credential" + } + ] + }, + { + "action": { + "name": "identity:delete_application_credential" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "identity:delete_application_credential" + } + ] + } + ], + "meta_rules": [ + { + "name": "rbac", + "description": "", + "subject_categories": [ + { + "name": "role" + } + ], + "object_categories": [ + { + "name": "id" + } + ], + "action_categories": [ + { + "name": "action_id" + } + ] + } + ], + "rules": [ + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_regions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_region" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_services" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_registered_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_registered_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_registered_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_registered_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_registered_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_limit" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_domains" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_target_project_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_project_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_user_projects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_project_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_project_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_project_tag" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_project_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_project_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_project_tags" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_target_user_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_user_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_users" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_target_group_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_group_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_groups_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_users_in_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:remove_user_from_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_user_in_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:add_user_to_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_credentials" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_get_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_list_credentials" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_create_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:ec2_delete_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_matches_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "get_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_matches_target_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_matches_target_domain_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_matches_filter_on_list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_matches_filter_on_list_domain_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_and_matching_prior_role_domain_id" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "implied_role_matches_prior_role_domain_or_global" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_implied_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_role_inference_rules" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_implied_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_system_grants_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_system_grant_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_system_grant_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_system_grant_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_system_grants_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_system_grant_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_system_grant_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_system_grant_for_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_grant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_grant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_grant" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_global_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_domain_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_grant_match" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_global_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_domain_role_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "domain_admin_for_list_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "project_admin_for_list_grants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_on_domain_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_on_project_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "admin_on_domain_of_project_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_role_assignments" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_role_assignments_for_tree" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_policies" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:validate_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:validate_token_head" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revocation_list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:revoke_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_trusts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_roles_for_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_role_for_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_trust" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_consumers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_consumer" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:authorize_request_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_access_token_roles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_access_token_role" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_access_tokens" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_access_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_access_token" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:add_endpoint_to_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_endpoint_in_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints_for_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:remove_endpoint_from_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoint_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects_associated_with_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints_associated_with_endpoint_group" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_endpoint_group_in_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoint_groups_for_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:add_endpoint_group_to_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:remove_endpoint_group_from_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_identity_providers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_identity_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_protocols" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_protocol" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_mappings" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_mapping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_service_providers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_service_provider" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_catalog" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_projects" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_domains" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_auth_system" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_projects_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_domains_for_user" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_revoke_events" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy_association_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_policy_association_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy_association_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy_association_for_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_policy_association_for_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy_association_for_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_policy_association_for_region_and_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:check_policy_association_for_region_and_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_policy_association_for_region_and_service" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_policy_for_endpoint" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_endpoints_for_policy" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_security_compliance_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:update_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_domain_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_domain_config_default" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:get_application_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:list_application_credentials" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:create_application_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "identity:delete_application_credential" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + } + ] +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/opst_rbac_kg.json b/moon_engine/tests/func_policies/opst_rbac_kg.json new file mode 100644 index 00000000..5fc27b8c --- /dev/null +++ b/moon_engine/tests/func_policies/opst_rbac_kg.json @@ -0,0 +1 @@ +{"policies": [{"name": "OpenStack RBAC Policy", "genre": "authz", "description": "A RBAC policy similar of what you can find through policy.json files", "model": {"name": "OPST_RBAC"}, "mandatory": true, "override": true}], "models": [{"name": "OPST_RBAC", "description": "", "meta_rules": [{"name": "rbac"}], "override": true}], "subjects": [{"name": "admin", "description": "", "extra": {}, "policies": [{"name": "OpenStack RBAC Policy"}]}], "subject_categories": [{"name": "role", "description": "a role in OpenStack"}], "subject_data": [{"name": "admin", "description": "the admin role", "policies": [], "category": {"name": "role"}}, {"name": "member", "description": "the member role", "policies": [], "category": {"name": "role"}}], "subject_assignments": [{"subject": {"name": "admin"}, "category": {"name": "role"}, "assignments": [{"name": "admin"}, {"name": "member"}]}], "objects": [{"name": "all_vm", "description": "", "extra": {}, "policies": [{"name": "OpenStack RBAC Policy"}]}], "object_categories": [{"name": "id", "description": "the UID of each virtual machine"}], "object_data": [{"name": "all_vm", "description": "represents all virtual machines in this project", "policies": [], "category": {"name": "id"}}], "object_assignments": [{"object": {"name": "all_vm"}, "category": {"name": "id"}, "assignments": [{"name": "all_vm"}]}], "actions": [{"name": "add_image", "description": "add_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "delete_image", "description": "delete_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_image", "description": "get_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_images", "description": "get_images action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "modify_image", "description": "modify_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "publicize_image", "description": "publicize_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "communitize_image", "description": "communitize_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "copy_from", "description": "copy_from action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "download_image", "description": "download_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "upload_image", "description": "upload_image action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "delete_image_location", "description": "delete_image_location action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_image_location", "description": "get_image_location action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "set_image_location", "description": "set_image_location action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_member", "description": "add_member action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "delete_member", "description": "delete_member action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_member", "description": "get_member action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_members", "description": "get_members action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "modify_member", "description": "modify_member action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "manage_image_cache", "description": "manage_image_cache action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_task", "description": "get_task action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_tasks", "description": "get_tasks action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_task", "description": "add_task action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "modify_task", "description": "modify_task action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "tasks_api_access", "description": "tasks_api_access action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "deactivate", "description": "deactivate action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "reactivate", "description": "reactivate action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_namespace", "description": "get_metadef_namespace action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_namespaces", "description": "get_metadef_namespaces action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "modify_metadef_namespace", "description": "modify_metadef_namespace action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_metadef_namespace", "description": "add_metadef_namespace action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_object", "description": "get_metadef_object action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_objects", "description": "get_metadef_objects action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "modify_metadef_object", "description": "modify_metadef_object action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_metadef_object", "description": "add_metadef_object action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "list_metadef_resource_types", "description": "list_metadef_resource_types action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_resource_type", "description": "get_metadef_resource_type action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_metadef_resource_type_association", "description": "add_metadef_resource_type_association action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_property", "description": "get_metadef_property action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_properties", "description": "get_metadef_properties action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "modify_metadef_property", "description": "modify_metadef_property action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_metadef_property", "description": "add_metadef_property action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_tag", "description": "get_metadef_tag action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "get_metadef_tags", "description": "get_metadef_tags action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "modify_metadef_tag", "description": "modify_metadef_tag action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_metadef_tag", "description": "add_metadef_tag action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "add_metadef_tags", "description": "add_metadef_tags action for glance", "extra": {"component": "glance"}, "policies": []}, {"name": "identity:get_region", "description": "identity:get_region action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_regions", "description": "identity:list_regions action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_region", "description": "identity:create_region action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_region", "description": "identity:update_region action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_region", "description": "identity:delete_region action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_service", "description": "identity:get_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_services", "description": "identity:list_services action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_service", "description": "identity:create_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_service", "description": "identity:update_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_service", "description": "identity:delete_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_endpoint", "description": "identity:get_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_endpoints", "description": "identity:list_endpoints action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_endpoint", "description": "identity:create_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_endpoint", "description": "identity:update_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_endpoint", "description": "identity:delete_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_registered_limit", "description": "identity:get_registered_limit action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_registered_limits", "description": "identity:list_registered_limits action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_registered_limits", "description": "identity:create_registered_limits action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_registered_limits", "description": "identity:update_registered_limits action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_registered_limit", "description": "identity:delete_registered_limit action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_limit", "description": "identity:get_limit action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_limits", "description": "identity:list_limits action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_limits", "description": "identity:create_limits action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_limits", "description": "identity:update_limits action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_limit", "description": "identity:delete_limit action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_domain", "description": "identity:get_domain action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_domains", "description": "identity:list_domains action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_domain", "description": "identity:create_domain action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_domain", "description": "identity:update_domain action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_domain", "description": "identity:delete_domain action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_and_matching_target_project_domain_id", "description": "admin_and_matching_target_project_domain_id action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_and_matching_project_domain_id", "description": "admin_and_matching_project_domain_id action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_project", "description": "identity:get_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_projects", "description": "identity:list_projects action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_user_projects", "description": "identity:list_user_projects action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_project", "description": "identity:create_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_project", "description": "identity:update_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_project", "description": "identity:delete_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_project_tag", "description": "identity:create_project_tag action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_project_tag", "description": "identity:delete_project_tag action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_project_tag", "description": "identity:get_project_tag action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_project_tags", "description": "identity:list_project_tags action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_project_tags", "description": "identity:delete_project_tags action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_project_tags", "description": "identity:update_project_tags action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_and_matching_target_user_domain_id", "description": "admin_and_matching_target_user_domain_id action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_and_matching_user_domain_id", "description": "admin_and_matching_user_domain_id action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_user", "description": "identity:get_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_users", "description": "identity:list_users action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_user", "description": "identity:create_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_user", "description": "identity:update_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_user", "description": "identity:delete_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_and_matching_target_group_domain_id", "description": "admin_and_matching_target_group_domain_id action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_and_matching_group_domain_id", "description": "admin_and_matching_group_domain_id action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_group", "description": "identity:get_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_groups", "description": "identity:list_groups action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_groups_for_user", "description": "identity:list_groups_for_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_group", "description": "identity:create_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_group", "description": "identity:update_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_group", "description": "identity:delete_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_users_in_group", "description": "identity:list_users_in_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:remove_user_from_group", "description": "identity:remove_user_from_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_user_in_group", "description": "identity:check_user_in_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:add_user_to_group", "description": "identity:add_user_to_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_credential", "description": "identity:get_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_credentials", "description": "identity:list_credentials action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_credential", "description": "identity:create_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_credential", "description": "identity:update_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_credential", "description": "identity:delete_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:ec2_get_credential", "description": "identity:ec2_get_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:ec2_list_credentials", "description": "identity:ec2_list_credentials action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:ec2_create_credential", "description": "identity:ec2_create_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:ec2_delete_credential", "description": "identity:ec2_delete_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_role", "description": "identity:get_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_roles", "description": "identity:list_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_role", "description": "identity:create_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_role", "description": "identity:update_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_role", "description": "identity:delete_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_domain_role", "description": "identity:get_domain_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_domain_roles", "description": "identity:list_domain_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_domain_role", "description": "identity:create_domain_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_domain_role", "description": "identity:update_domain_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_domain_role", "description": "identity:delete_domain_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_matches_domain_role", "description": "domain_admin_matches_domain_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "get_domain_roles", "description": "get_domain_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_matches_target_domain_role", "description": "domain_admin_matches_target_domain_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "project_admin_matches_target_domain_role", "description": "project_admin_matches_target_domain_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "list_domain_roles", "description": "list_domain_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_matches_filter_on_list_domain_roles", "description": "domain_admin_matches_filter_on_list_domain_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "project_admin_matches_filter_on_list_domain_roles", "description": "project_admin_matches_filter_on_list_domain_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_and_matching_prior_role_domain_id", "description": "admin_and_matching_prior_role_domain_id action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "implied_role_matches_prior_role_domain_or_global", "description": "implied_role_matches_prior_role_domain_or_global action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_implied_role", "description": "identity:get_implied_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_implied_roles", "description": "identity:list_implied_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_implied_role", "description": "identity:create_implied_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_implied_role", "description": "identity:delete_implied_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_role_inference_rules", "description": "identity:list_role_inference_rules action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_implied_role", "description": "identity:check_implied_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_system_grants_for_user", "description": "identity:list_system_grants_for_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_system_grant_for_user", "description": "identity:check_system_grant_for_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_system_grant_for_user", "description": "identity:create_system_grant_for_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:revoke_system_grant_for_user", "description": "identity:revoke_system_grant_for_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_system_grants_for_group", "description": "identity:list_system_grants_for_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_system_grant_for_group", "description": "identity:check_system_grant_for_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_system_grant_for_group", "description": "identity:create_system_grant_for_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:revoke_system_grant_for_group", "description": "identity:revoke_system_grant_for_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_grant", "description": "identity:check_grant action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_grants", "description": "identity:list_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_grant", "description": "identity:create_grant action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:revoke_grant", "description": "identity:revoke_grant action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_for_grants", "description": "domain_admin_for_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_for_global_role_grants", "description": "domain_admin_for_global_role_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_for_domain_role_grants", "description": "domain_admin_for_domain_role_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_grant_match", "description": "domain_admin_grant_match action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "project_admin_for_grants", "description": "project_admin_for_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "project_admin_for_global_role_grants", "description": "project_admin_for_global_role_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "project_admin_for_domain_role_grants", "description": "project_admin_for_domain_role_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "domain_admin_for_list_grants", "description": "domain_admin_for_list_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "project_admin_for_list_grants", "description": "project_admin_for_list_grants action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_on_domain_filter", "description": "admin_on_domain_filter action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_on_project_filter", "description": "admin_on_project_filter action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "admin_on_domain_of_project_filter", "description": "admin_on_domain_of_project_filter action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_role_assignments", "description": "identity:list_role_assignments action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_role_assignments_for_tree", "description": "identity:list_role_assignments_for_tree action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_policy", "description": "identity:get_policy action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_policies", "description": "identity:list_policies action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_policy", "description": "identity:create_policy action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_policy", "description": "identity:update_policy action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_policy", "description": "identity:delete_policy action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_token", "description": "identity:check_token action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:validate_token", "description": "identity:validate_token action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:validate_token_head", "description": "identity:validate_token_head action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:revocation_list", "description": "identity:revocation_list action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:revoke_token", "description": "identity:revoke_token action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_trust", "description": "identity:create_trust action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_trusts", "description": "identity:list_trusts action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_roles_for_trust", "description": "identity:list_roles_for_trust action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_role_for_trust", "description": "identity:get_role_for_trust action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_trust", "description": "identity:delete_trust action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_trust", "description": "identity:get_trust action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_consumer", "description": "identity:create_consumer action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_consumer", "description": "identity:get_consumer action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_consumers", "description": "identity:list_consumers action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_consumer", "description": "identity:delete_consumer action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_consumer", "description": "identity:update_consumer action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:authorize_request_token", "description": "identity:authorize_request_token action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_access_token_roles", "description": "identity:list_access_token_roles action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_access_token_role", "description": "identity:get_access_token_role action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_access_tokens", "description": "identity:list_access_tokens action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_access_token", "description": "identity:get_access_token action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_access_token", "description": "identity:delete_access_token action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_projects_for_endpoint", "description": "identity:list_projects_for_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:add_endpoint_to_project", "description": "identity:add_endpoint_to_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_endpoint_in_project", "description": "identity:check_endpoint_in_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_endpoints_for_project", "description": "identity:list_endpoints_for_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:remove_endpoint_from_project", "description": "identity:remove_endpoint_from_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_endpoint_group", "description": "identity:create_endpoint_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_endpoint_groups", "description": "identity:list_endpoint_groups action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_endpoint_group", "description": "identity:get_endpoint_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_endpoint_group", "description": "identity:update_endpoint_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_endpoint_group", "description": "identity:delete_endpoint_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_projects_associated_with_endpoint_group", "description": "identity:list_projects_associated_with_endpoint_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_endpoints_associated_with_endpoint_group", "description": "identity:list_endpoints_associated_with_endpoint_group action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_endpoint_group_in_project", "description": "identity:get_endpoint_group_in_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_endpoint_groups_for_project", "description": "identity:list_endpoint_groups_for_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:add_endpoint_group_to_project", "description": "identity:add_endpoint_group_to_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:remove_endpoint_group_from_project", "description": "identity:remove_endpoint_group_from_project action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_identity_provider", "description": "identity:create_identity_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_identity_providers", "description": "identity:list_identity_providers action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_identity_provider", "description": "identity:get_identity_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_identity_provider", "description": "identity:update_identity_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_identity_provider", "description": "identity:delete_identity_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_protocol", "description": "identity:create_protocol action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_protocol", "description": "identity:update_protocol action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_protocol", "description": "identity:get_protocol action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_protocols", "description": "identity:list_protocols action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_protocol", "description": "identity:delete_protocol action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_mapping", "description": "identity:create_mapping action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_mapping", "description": "identity:get_mapping action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_mappings", "description": "identity:list_mappings action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_mapping", "description": "identity:delete_mapping action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_mapping", "description": "identity:update_mapping action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_service_provider", "description": "identity:create_service_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_service_providers", "description": "identity:list_service_providers action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_service_provider", "description": "identity:get_service_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_service_provider", "description": "identity:update_service_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_service_provider", "description": "identity:delete_service_provider action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_auth_catalog", "description": "identity:get_auth_catalog action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_auth_projects", "description": "identity:get_auth_projects action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_auth_domains", "description": "identity:get_auth_domains action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_auth_system", "description": "identity:get_auth_system action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_projects_for_user", "description": "identity:list_projects_for_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_domains_for_user", "description": "identity:list_domains_for_user action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_revoke_events", "description": "identity:list_revoke_events action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_policy_association_for_endpoint", "description": "identity:create_policy_association_for_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_policy_association_for_endpoint", "description": "identity:check_policy_association_for_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_policy_association_for_endpoint", "description": "identity:delete_policy_association_for_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_policy_association_for_service", "description": "identity:create_policy_association_for_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_policy_association_for_service", "description": "identity:check_policy_association_for_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_policy_association_for_service", "description": "identity:delete_policy_association_for_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_policy_association_for_region_and_service", "description": "identity:create_policy_association_for_region_and_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:check_policy_association_for_region_and_service", "description": "identity:check_policy_association_for_region_and_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_policy_association_for_region_and_service", "description": "identity:delete_policy_association_for_region_and_service action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_policy_for_endpoint", "description": "identity:get_policy_for_endpoint action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_endpoints_for_policy", "description": "identity:list_endpoints_for_policy action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_domain_config", "description": "identity:create_domain_config action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_domain_config", "description": "identity:get_domain_config action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_security_compliance_domain_config", "description": "identity:get_security_compliance_domain_config action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:update_domain_config", "description": "identity:update_domain_config action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_domain_config", "description": "identity:delete_domain_config action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_domain_config_default", "description": "identity:get_domain_config_default action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:get_application_credential", "description": "identity:get_application_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:list_application_credentials", "description": "identity:list_application_credentials action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:create_application_credential", "description": "identity:create_application_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}, {"name": "identity:delete_application_credential", "description": "identity:delete_application_credential action for keystone", "extra": {"component": "keystone"}, "policies": []}], "action_categories": [{"name": "action_id", "description": ""}], "action_data": [{"name": "add_image", "description": "add_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "delete_image", "description": "delete_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_image", "description": "get_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_images", "description": "get_images action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "modify_image", "description": "modify_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "publicize_image", "description": "publicize_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "communitize_image", "description": "communitize_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "copy_from", "description": "copy_from action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "download_image", "description": "download_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "upload_image", "description": "upload_image action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "delete_image_location", "description": "delete_image_location action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_image_location", "description": "get_image_location action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "set_image_location", "description": "set_image_location action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_member", "description": "add_member action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "delete_member", "description": "delete_member action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_member", "description": "get_member action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_members", "description": "get_members action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "modify_member", "description": "modify_member action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "manage_image_cache", "description": "manage_image_cache action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_task", "description": "get_task action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_tasks", "description": "get_tasks action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_task", "description": "add_task action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "modify_task", "description": "modify_task action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "tasks_api_access", "description": "tasks_api_access action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "deactivate", "description": "deactivate action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "reactivate", "description": "reactivate action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_namespace", "description": "get_metadef_namespace action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_namespaces", "description": "get_metadef_namespaces action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "modify_metadef_namespace", "description": "modify_metadef_namespace action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_metadef_namespace", "description": "add_metadef_namespace action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_object", "description": "get_metadef_object action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_objects", "description": "get_metadef_objects action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "modify_metadef_object", "description": "modify_metadef_object action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_metadef_object", "description": "add_metadef_object action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "list_metadef_resource_types", "description": "list_metadef_resource_types action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_resource_type", "description": "get_metadef_resource_type action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_metadef_resource_type_association", "description": "add_metadef_resource_type_association action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_property", "description": "get_metadef_property action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_properties", "description": "get_metadef_properties action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "modify_metadef_property", "description": "modify_metadef_property action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_metadef_property", "description": "add_metadef_property action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_tag", "description": "get_metadef_tag action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "get_metadef_tags", "description": "get_metadef_tags action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "modify_metadef_tag", "description": "modify_metadef_tag action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_metadef_tag", "description": "add_metadef_tag action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "add_metadef_tags", "description": "add_metadef_tags action for glance", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_region", "description": "identity:get_region action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_regions", "description": "identity:list_regions action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_region", "description": "identity:create_region action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_region", "description": "identity:update_region action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_region", "description": "identity:delete_region action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_service", "description": "identity:get_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_services", "description": "identity:list_services action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_service", "description": "identity:create_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_service", "description": "identity:update_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_service", "description": "identity:delete_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_endpoint", "description": "identity:get_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_endpoints", "description": "identity:list_endpoints action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_endpoint", "description": "identity:create_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_endpoint", "description": "identity:update_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_endpoint", "description": "identity:delete_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_registered_limit", "description": "identity:get_registered_limit action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_registered_limits", "description": "identity:list_registered_limits action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_registered_limits", "description": "identity:create_registered_limits action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_registered_limits", "description": "identity:update_registered_limits action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_registered_limit", "description": "identity:delete_registered_limit action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_limit", "description": "identity:get_limit action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_limits", "description": "identity:list_limits action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_limits", "description": "identity:create_limits action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_limits", "description": "identity:update_limits action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_limit", "description": "identity:delete_limit action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_domain", "description": "identity:get_domain action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_domains", "description": "identity:list_domains action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_domain", "description": "identity:create_domain action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_domain", "description": "identity:update_domain action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_domain", "description": "identity:delete_domain action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_and_matching_target_project_domain_id", "description": "admin_and_matching_target_project_domain_id action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_and_matching_project_domain_id", "description": "admin_and_matching_project_domain_id action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_project", "description": "identity:get_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_projects", "description": "identity:list_projects action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_user_projects", "description": "identity:list_user_projects action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_project", "description": "identity:create_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_project", "description": "identity:update_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_project", "description": "identity:delete_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_project_tag", "description": "identity:create_project_tag action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_project_tag", "description": "identity:delete_project_tag action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_project_tag", "description": "identity:get_project_tag action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_project_tags", "description": "identity:list_project_tags action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_project_tags", "description": "identity:delete_project_tags action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_project_tags", "description": "identity:update_project_tags action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_and_matching_target_user_domain_id", "description": "admin_and_matching_target_user_domain_id action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_and_matching_user_domain_id", "description": "admin_and_matching_user_domain_id action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_user", "description": "identity:get_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_users", "description": "identity:list_users action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_user", "description": "identity:create_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_user", "description": "identity:update_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_user", "description": "identity:delete_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_and_matching_target_group_domain_id", "description": "admin_and_matching_target_group_domain_id action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_and_matching_group_domain_id", "description": "admin_and_matching_group_domain_id action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_group", "description": "identity:get_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_groups", "description": "identity:list_groups action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_groups_for_user", "description": "identity:list_groups_for_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_group", "description": "identity:create_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_group", "description": "identity:update_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_group", "description": "identity:delete_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_users_in_group", "description": "identity:list_users_in_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:remove_user_from_group", "description": "identity:remove_user_from_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_user_in_group", "description": "identity:check_user_in_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:add_user_to_group", "description": "identity:add_user_to_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_credential", "description": "identity:get_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_credentials", "description": "identity:list_credentials action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_credential", "description": "identity:create_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_credential", "description": "identity:update_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_credential", "description": "identity:delete_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:ec2_get_credential", "description": "identity:ec2_get_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:ec2_list_credentials", "description": "identity:ec2_list_credentials action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:ec2_create_credential", "description": "identity:ec2_create_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:ec2_delete_credential", "description": "identity:ec2_delete_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_role", "description": "identity:get_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_roles", "description": "identity:list_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_role", "description": "identity:create_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_role", "description": "identity:update_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_role", "description": "identity:delete_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_domain_role", "description": "identity:get_domain_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_domain_roles", "description": "identity:list_domain_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_domain_role", "description": "identity:create_domain_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_domain_role", "description": "identity:update_domain_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_domain_role", "description": "identity:delete_domain_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_matches_domain_role", "description": "domain_admin_matches_domain_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "get_domain_roles", "description": "get_domain_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_matches_target_domain_role", "description": "domain_admin_matches_target_domain_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "project_admin_matches_target_domain_role", "description": "project_admin_matches_target_domain_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "list_domain_roles", "description": "list_domain_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_matches_filter_on_list_domain_roles", "description": "domain_admin_matches_filter_on_list_domain_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "project_admin_matches_filter_on_list_domain_roles", "description": "project_admin_matches_filter_on_list_domain_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_and_matching_prior_role_domain_id", "description": "admin_and_matching_prior_role_domain_id action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "implied_role_matches_prior_role_domain_or_global", "description": "implied_role_matches_prior_role_domain_or_global action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_implied_role", "description": "identity:get_implied_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_implied_roles", "description": "identity:list_implied_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_implied_role", "description": "identity:create_implied_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_implied_role", "description": "identity:delete_implied_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_role_inference_rules", "description": "identity:list_role_inference_rules action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_implied_role", "description": "identity:check_implied_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_system_grants_for_user", "description": "identity:list_system_grants_for_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_system_grant_for_user", "description": "identity:check_system_grant_for_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_system_grant_for_user", "description": "identity:create_system_grant_for_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:revoke_system_grant_for_user", "description": "identity:revoke_system_grant_for_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_system_grants_for_group", "description": "identity:list_system_grants_for_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_system_grant_for_group", "description": "identity:check_system_grant_for_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_system_grant_for_group", "description": "identity:create_system_grant_for_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:revoke_system_grant_for_group", "description": "identity:revoke_system_grant_for_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_grant", "description": "identity:check_grant action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_grants", "description": "identity:list_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_grant", "description": "identity:create_grant action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:revoke_grant", "description": "identity:revoke_grant action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_for_grants", "description": "domain_admin_for_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_for_global_role_grants", "description": "domain_admin_for_global_role_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_for_domain_role_grants", "description": "domain_admin_for_domain_role_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_grant_match", "description": "domain_admin_grant_match action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "project_admin_for_grants", "description": "project_admin_for_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "project_admin_for_global_role_grants", "description": "project_admin_for_global_role_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "project_admin_for_domain_role_grants", "description": "project_admin_for_domain_role_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "domain_admin_for_list_grants", "description": "domain_admin_for_list_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "project_admin_for_list_grants", "description": "project_admin_for_list_grants action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_on_domain_filter", "description": "admin_on_domain_filter action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_on_project_filter", "description": "admin_on_project_filter action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "admin_on_domain_of_project_filter", "description": "admin_on_domain_of_project_filter action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_role_assignments", "description": "identity:list_role_assignments action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_role_assignments_for_tree", "description": "identity:list_role_assignments_for_tree action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_policy", "description": "identity:get_policy action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_policies", "description": "identity:list_policies action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_policy", "description": "identity:create_policy action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_policy", "description": "identity:update_policy action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_policy", "description": "identity:delete_policy action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_token", "description": "identity:check_token action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:validate_token", "description": "identity:validate_token action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:validate_token_head", "description": "identity:validate_token_head action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:revocation_list", "description": "identity:revocation_list action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:revoke_token", "description": "identity:revoke_token action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_trust", "description": "identity:create_trust action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_trusts", "description": "identity:list_trusts action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_roles_for_trust", "description": "identity:list_roles_for_trust action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_role_for_trust", "description": "identity:get_role_for_trust action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_trust", "description": "identity:delete_trust action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_trust", "description": "identity:get_trust action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_consumer", "description": "identity:create_consumer action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_consumer", "description": "identity:get_consumer action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_consumers", "description": "identity:list_consumers action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_consumer", "description": "identity:delete_consumer action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_consumer", "description": "identity:update_consumer action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:authorize_request_token", "description": "identity:authorize_request_token action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_access_token_roles", "description": "identity:list_access_token_roles action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_access_token_role", "description": "identity:get_access_token_role action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_access_tokens", "description": "identity:list_access_tokens action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_access_token", "description": "identity:get_access_token action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_access_token", "description": "identity:delete_access_token action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_projects_for_endpoint", "description": "identity:list_projects_for_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:add_endpoint_to_project", "description": "identity:add_endpoint_to_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_endpoint_in_project", "description": "identity:check_endpoint_in_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_endpoints_for_project", "description": "identity:list_endpoints_for_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:remove_endpoint_from_project", "description": "identity:remove_endpoint_from_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_endpoint_group", "description": "identity:create_endpoint_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_endpoint_groups", "description": "identity:list_endpoint_groups action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_endpoint_group", "description": "identity:get_endpoint_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_endpoint_group", "description": "identity:update_endpoint_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_endpoint_group", "description": "identity:delete_endpoint_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_projects_associated_with_endpoint_group", "description": "identity:list_projects_associated_with_endpoint_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_endpoints_associated_with_endpoint_group", "description": "identity:list_endpoints_associated_with_endpoint_group action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_endpoint_group_in_project", "description": "identity:get_endpoint_group_in_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_endpoint_groups_for_project", "description": "identity:list_endpoint_groups_for_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:add_endpoint_group_to_project", "description": "identity:add_endpoint_group_to_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:remove_endpoint_group_from_project", "description": "identity:remove_endpoint_group_from_project action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_identity_provider", "description": "identity:create_identity_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_identity_providers", "description": "identity:list_identity_providers action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_identity_provider", "description": "identity:get_identity_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_identity_provider", "description": "identity:update_identity_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_identity_provider", "description": "identity:delete_identity_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_protocol", "description": "identity:create_protocol action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_protocol", "description": "identity:update_protocol action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_protocol", "description": "identity:get_protocol action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_protocols", "description": "identity:list_protocols action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_protocol", "description": "identity:delete_protocol action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_mapping", "description": "identity:create_mapping action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_mapping", "description": "identity:get_mapping action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_mappings", "description": "identity:list_mappings action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_mapping", "description": "identity:delete_mapping action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_mapping", "description": "identity:update_mapping action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_service_provider", "description": "identity:create_service_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_service_providers", "description": "identity:list_service_providers action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_service_provider", "description": "identity:get_service_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_service_provider", "description": "identity:update_service_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_service_provider", "description": "identity:delete_service_provider action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_auth_catalog", "description": "identity:get_auth_catalog action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_auth_projects", "description": "identity:get_auth_projects action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_auth_domains", "description": "identity:get_auth_domains action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_auth_system", "description": "identity:get_auth_system action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_projects_for_user", "description": "identity:list_projects_for_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_domains_for_user", "description": "identity:list_domains_for_user action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_revoke_events", "description": "identity:list_revoke_events action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_policy_association_for_endpoint", "description": "identity:create_policy_association_for_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_policy_association_for_endpoint", "description": "identity:check_policy_association_for_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_policy_association_for_endpoint", "description": "identity:delete_policy_association_for_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_policy_association_for_service", "description": "identity:create_policy_association_for_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_policy_association_for_service", "description": "identity:check_policy_association_for_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_policy_association_for_service", "description": "identity:delete_policy_association_for_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_policy_association_for_region_and_service", "description": "identity:create_policy_association_for_region_and_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:check_policy_association_for_region_and_service", "description": "identity:check_policy_association_for_region_and_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_policy_association_for_region_and_service", "description": "identity:delete_policy_association_for_region_and_service action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_policy_for_endpoint", "description": "identity:get_policy_for_endpoint action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_endpoints_for_policy", "description": "identity:list_endpoints_for_policy action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_domain_config", "description": "identity:create_domain_config action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_domain_config", "description": "identity:get_domain_config action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_security_compliance_domain_config", "description": "identity:get_security_compliance_domain_config action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:update_domain_config", "description": "identity:update_domain_config action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_domain_config", "description": "identity:delete_domain_config action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_domain_config_default", "description": "identity:get_domain_config_default action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:get_application_credential", "description": "identity:get_application_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:list_application_credentials", "description": "identity:list_application_credentials action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:create_application_credential", "description": "identity:create_application_credential action for keystone", "policies": [], "category": {"name": "action_id"}}, {"name": "identity:delete_application_credential", "description": "identity:delete_application_credential action for keystone", "policies": [], "category": {"name": "action_id"}}], "action_assignments": [{"action": {"name": "add_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_image"}]}, {"action": {"name": "delete_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "delete_image"}]}, {"action": {"name": "get_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_image"}]}, {"action": {"name": "get_images"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_images"}]}, {"action": {"name": "modify_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "modify_image"}]}, {"action": {"name": "publicize_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "publicize_image"}]}, {"action": {"name": "communitize_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "communitize_image"}]}, {"action": {"name": "copy_from"}, "category": {"name": "action_id"}, "assignments": [{"name": "copy_from"}]}, {"action": {"name": "download_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "download_image"}]}, {"action": {"name": "upload_image"}, "category": {"name": "action_id"}, "assignments": [{"name": "upload_image"}]}, {"action": {"name": "delete_image_location"}, "category": {"name": "action_id"}, "assignments": [{"name": "delete_image_location"}]}, {"action": {"name": "get_image_location"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_image_location"}]}, {"action": {"name": "set_image_location"}, "category": {"name": "action_id"}, "assignments": [{"name": "set_image_location"}]}, {"action": {"name": "add_member"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_member"}]}, {"action": {"name": "delete_member"}, "category": {"name": "action_id"}, "assignments": [{"name": "delete_member"}]}, {"action": {"name": "get_member"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_member"}]}, {"action": {"name": "get_members"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_members"}]}, {"action": {"name": "modify_member"}, "category": {"name": "action_id"}, "assignments": [{"name": "modify_member"}]}, {"action": {"name": "manage_image_cache"}, "category": {"name": "action_id"}, "assignments": [{"name": "manage_image_cache"}]}, {"action": {"name": "get_task"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_task"}]}, {"action": {"name": "get_tasks"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_tasks"}]}, {"action": {"name": "add_task"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_task"}]}, {"action": {"name": "modify_task"}, "category": {"name": "action_id"}, "assignments": [{"name": "modify_task"}]}, {"action": {"name": "tasks_api_access"}, "category": {"name": "action_id"}, "assignments": [{"name": "tasks_api_access"}]}, {"action": {"name": "deactivate"}, "category": {"name": "action_id"}, "assignments": [{"name": "deactivate"}]}, {"action": {"name": "reactivate"}, "category": {"name": "action_id"}, "assignments": [{"name": "reactivate"}]}, {"action": {"name": "get_metadef_namespace"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_namespace"}]}, {"action": {"name": "get_metadef_namespaces"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_namespaces"}]}, {"action": {"name": "modify_metadef_namespace"}, "category": {"name": "action_id"}, "assignments": [{"name": "modify_metadef_namespace"}]}, {"action": {"name": "add_metadef_namespace"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_metadef_namespace"}]}, {"action": {"name": "get_metadef_object"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_object"}]}, {"action": {"name": "get_metadef_objects"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_objects"}]}, {"action": {"name": "modify_metadef_object"}, "category": {"name": "action_id"}, "assignments": [{"name": "modify_metadef_object"}]}, {"action": {"name": "add_metadef_object"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_metadef_object"}]}, {"action": {"name": "list_metadef_resource_types"}, "category": {"name": "action_id"}, "assignments": [{"name": "list_metadef_resource_types"}]}, {"action": {"name": "get_metadef_resource_type"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_resource_type"}]}, {"action": {"name": "add_metadef_resource_type_association"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_metadef_resource_type_association"}]}, {"action": {"name": "get_metadef_property"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_property"}]}, {"action": {"name": "get_metadef_properties"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_properties"}]}, {"action": {"name": "modify_metadef_property"}, "category": {"name": "action_id"}, "assignments": [{"name": "modify_metadef_property"}]}, {"action": {"name": "add_metadef_property"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_metadef_property"}]}, {"action": {"name": "get_metadef_tag"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_tag"}]}, {"action": {"name": "get_metadef_tags"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_metadef_tags"}]}, {"action": {"name": "modify_metadef_tag"}, "category": {"name": "action_id"}, "assignments": [{"name": "modify_metadef_tag"}]}, {"action": {"name": "add_metadef_tag"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_metadef_tag"}]}, {"action": {"name": "add_metadef_tags"}, "category": {"name": "action_id"}, "assignments": [{"name": "add_metadef_tags"}]}, {"action": {"name": "identity:get_region"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_region"}]}, {"action": {"name": "identity:list_regions"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_regions"}]}, {"action": {"name": "identity:create_region"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_region"}]}, {"action": {"name": "identity:update_region"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_region"}]}, {"action": {"name": "identity:delete_region"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_region"}]}, {"action": {"name": "identity:get_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_service"}]}, {"action": {"name": "identity:list_services"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_services"}]}, {"action": {"name": "identity:create_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_service"}]}, {"action": {"name": "identity:update_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_service"}]}, {"action": {"name": "identity:delete_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_service"}]}, {"action": {"name": "identity:get_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_endpoint"}]}, {"action": {"name": "identity:list_endpoints"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_endpoints"}]}, {"action": {"name": "identity:create_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_endpoint"}]}, {"action": {"name": "identity:update_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_endpoint"}]}, {"action": {"name": "identity:delete_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_endpoint"}]}, {"action": {"name": "identity:get_registered_limit"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_registered_limit"}]}, {"action": {"name": "identity:list_registered_limits"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_registered_limits"}]}, {"action": {"name": "identity:create_registered_limits"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_registered_limits"}]}, {"action": {"name": "identity:update_registered_limits"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_registered_limits"}]}, {"action": {"name": "identity:delete_registered_limit"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_registered_limit"}]}, {"action": {"name": "identity:get_limit"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_limit"}]}, {"action": {"name": "identity:list_limits"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_limits"}]}, {"action": {"name": "identity:create_limits"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_limits"}]}, {"action": {"name": "identity:update_limits"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_limits"}]}, {"action": {"name": "identity:delete_limit"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_limit"}]}, {"action": {"name": "identity:get_domain"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_domain"}]}, {"action": {"name": "identity:list_domains"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_domains"}]}, {"action": {"name": "identity:create_domain"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_domain"}]}, {"action": {"name": "identity:update_domain"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_domain"}]}, {"action": {"name": "identity:delete_domain"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_domain"}]}, {"action": {"name": "admin_and_matching_target_project_domain_id"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_and_matching_target_project_domain_id"}]}, {"action": {"name": "admin_and_matching_project_domain_id"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_and_matching_project_domain_id"}]}, {"action": {"name": "identity:get_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_project"}]}, {"action": {"name": "identity:list_projects"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_projects"}]}, {"action": {"name": "identity:list_user_projects"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_user_projects"}]}, {"action": {"name": "identity:create_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_project"}]}, {"action": {"name": "identity:update_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_project"}]}, {"action": {"name": "identity:delete_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_project"}]}, {"action": {"name": "identity:create_project_tag"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_project_tag"}]}, {"action": {"name": "identity:delete_project_tag"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_project_tag"}]}, {"action": {"name": "identity:get_project_tag"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_project_tag"}]}, {"action": {"name": "identity:list_project_tags"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_project_tags"}]}, {"action": {"name": "identity:delete_project_tags"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_project_tags"}]}, {"action": {"name": "identity:update_project_tags"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_project_tags"}]}, {"action": {"name": "admin_and_matching_target_user_domain_id"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_and_matching_target_user_domain_id"}]}, {"action": {"name": "admin_and_matching_user_domain_id"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_and_matching_user_domain_id"}]}, {"action": {"name": "identity:get_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_user"}]}, {"action": {"name": "identity:list_users"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_users"}]}, {"action": {"name": "identity:create_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_user"}]}, {"action": {"name": "identity:update_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_user"}]}, {"action": {"name": "identity:delete_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_user"}]}, {"action": {"name": "admin_and_matching_target_group_domain_id"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_and_matching_target_group_domain_id"}]}, {"action": {"name": "admin_and_matching_group_domain_id"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_and_matching_group_domain_id"}]}, {"action": {"name": "identity:get_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_group"}]}, {"action": {"name": "identity:list_groups"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_groups"}]}, {"action": {"name": "identity:list_groups_for_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_groups_for_user"}]}, {"action": {"name": "identity:create_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_group"}]}, {"action": {"name": "identity:update_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_group"}]}, {"action": {"name": "identity:delete_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_group"}]}, {"action": {"name": "identity:list_users_in_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_users_in_group"}]}, {"action": {"name": "identity:remove_user_from_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:remove_user_from_group"}]}, {"action": {"name": "identity:check_user_in_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_user_in_group"}]}, {"action": {"name": "identity:add_user_to_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:add_user_to_group"}]}, {"action": {"name": "identity:get_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_credential"}]}, {"action": {"name": "identity:list_credentials"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_credentials"}]}, {"action": {"name": "identity:create_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_credential"}]}, {"action": {"name": "identity:update_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_credential"}]}, {"action": {"name": "identity:delete_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_credential"}]}, {"action": {"name": "identity:ec2_get_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:ec2_get_credential"}]}, {"action": {"name": "identity:ec2_list_credentials"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:ec2_list_credentials"}]}, {"action": {"name": "identity:ec2_create_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:ec2_create_credential"}]}, {"action": {"name": "identity:ec2_delete_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:ec2_delete_credential"}]}, {"action": {"name": "identity:get_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_role"}]}, {"action": {"name": "identity:list_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_roles"}]}, {"action": {"name": "identity:create_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_role"}]}, {"action": {"name": "identity:update_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_role"}]}, {"action": {"name": "identity:delete_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_role"}]}, {"action": {"name": "identity:get_domain_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_domain_role"}]}, {"action": {"name": "identity:list_domain_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_domain_roles"}]}, {"action": {"name": "identity:create_domain_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_domain_role"}]}, {"action": {"name": "identity:update_domain_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_domain_role"}]}, {"action": {"name": "identity:delete_domain_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_domain_role"}]}, {"action": {"name": "domain_admin_matches_domain_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_matches_domain_role"}]}, {"action": {"name": "get_domain_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "get_domain_roles"}]}, {"action": {"name": "domain_admin_matches_target_domain_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_matches_target_domain_role"}]}, {"action": {"name": "project_admin_matches_target_domain_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "project_admin_matches_target_domain_role"}]}, {"action": {"name": "list_domain_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "list_domain_roles"}]}, {"action": {"name": "domain_admin_matches_filter_on_list_domain_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_matches_filter_on_list_domain_roles"}]}, {"action": {"name": "project_admin_matches_filter_on_list_domain_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "project_admin_matches_filter_on_list_domain_roles"}]}, {"action": {"name": "admin_and_matching_prior_role_domain_id"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_and_matching_prior_role_domain_id"}]}, {"action": {"name": "implied_role_matches_prior_role_domain_or_global"}, "category": {"name": "action_id"}, "assignments": [{"name": "implied_role_matches_prior_role_domain_or_global"}]}, {"action": {"name": "identity:get_implied_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_implied_role"}]}, {"action": {"name": "identity:list_implied_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_implied_roles"}]}, {"action": {"name": "identity:create_implied_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_implied_role"}]}, {"action": {"name": "identity:delete_implied_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_implied_role"}]}, {"action": {"name": "identity:list_role_inference_rules"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_role_inference_rules"}]}, {"action": {"name": "identity:check_implied_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_implied_role"}]}, {"action": {"name": "identity:list_system_grants_for_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_system_grants_for_user"}]}, {"action": {"name": "identity:check_system_grant_for_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_system_grant_for_user"}]}, {"action": {"name": "identity:create_system_grant_for_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_system_grant_for_user"}]}, {"action": {"name": "identity:revoke_system_grant_for_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:revoke_system_grant_for_user"}]}, {"action": {"name": "identity:list_system_grants_for_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_system_grants_for_group"}]}, {"action": {"name": "identity:check_system_grant_for_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_system_grant_for_group"}]}, {"action": {"name": "identity:create_system_grant_for_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_system_grant_for_group"}]}, {"action": {"name": "identity:revoke_system_grant_for_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:revoke_system_grant_for_group"}]}, {"action": {"name": "identity:check_grant"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_grant"}]}, {"action": {"name": "identity:list_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_grants"}]}, {"action": {"name": "identity:create_grant"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_grant"}]}, {"action": {"name": "identity:revoke_grant"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:revoke_grant"}]}, {"action": {"name": "domain_admin_for_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_for_grants"}]}, {"action": {"name": "domain_admin_for_global_role_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_for_global_role_grants"}]}, {"action": {"name": "domain_admin_for_domain_role_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_for_domain_role_grants"}]}, {"action": {"name": "domain_admin_grant_match"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_grant_match"}]}, {"action": {"name": "project_admin_for_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "project_admin_for_grants"}]}, {"action": {"name": "project_admin_for_global_role_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "project_admin_for_global_role_grants"}]}, {"action": {"name": "project_admin_for_domain_role_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "project_admin_for_domain_role_grants"}]}, {"action": {"name": "domain_admin_for_list_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "domain_admin_for_list_grants"}]}, {"action": {"name": "project_admin_for_list_grants"}, "category": {"name": "action_id"}, "assignments": [{"name": "project_admin_for_list_grants"}]}, {"action": {"name": "admin_on_domain_filter"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_on_domain_filter"}]}, {"action": {"name": "admin_on_project_filter"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_on_project_filter"}]}, {"action": {"name": "admin_on_domain_of_project_filter"}, "category": {"name": "action_id"}, "assignments": [{"name": "admin_on_domain_of_project_filter"}]}, {"action": {"name": "identity:list_role_assignments"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_role_assignments"}]}, {"action": {"name": "identity:list_role_assignments_for_tree"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_role_assignments_for_tree"}]}, {"action": {"name": "identity:get_policy"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_policy"}]}, {"action": {"name": "identity:list_policies"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_policies"}]}, {"action": {"name": "identity:create_policy"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_policy"}]}, {"action": {"name": "identity:update_policy"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_policy"}]}, {"action": {"name": "identity:delete_policy"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_policy"}]}, {"action": {"name": "identity:check_token"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_token"}]}, {"action": {"name": "identity:validate_token"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:validate_token"}]}, {"action": {"name": "identity:validate_token_head"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:validate_token_head"}]}, {"action": {"name": "identity:revocation_list"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:revocation_list"}]}, {"action": {"name": "identity:revoke_token"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:revoke_token"}]}, {"action": {"name": "identity:create_trust"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_trust"}]}, {"action": {"name": "identity:list_trusts"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_trusts"}]}, {"action": {"name": "identity:list_roles_for_trust"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_roles_for_trust"}]}, {"action": {"name": "identity:get_role_for_trust"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_role_for_trust"}]}, {"action": {"name": "identity:delete_trust"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_trust"}]}, {"action": {"name": "identity:get_trust"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_trust"}]}, {"action": {"name": "identity:create_consumer"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_consumer"}]}, {"action": {"name": "identity:get_consumer"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_consumer"}]}, {"action": {"name": "identity:list_consumers"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_consumers"}]}, {"action": {"name": "identity:delete_consumer"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_consumer"}]}, {"action": {"name": "identity:update_consumer"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_consumer"}]}, {"action": {"name": "identity:authorize_request_token"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:authorize_request_token"}]}, {"action": {"name": "identity:list_access_token_roles"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_access_token_roles"}]}, {"action": {"name": "identity:get_access_token_role"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_access_token_role"}]}, {"action": {"name": "identity:list_access_tokens"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_access_tokens"}]}, {"action": {"name": "identity:get_access_token"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_access_token"}]}, {"action": {"name": "identity:delete_access_token"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_access_token"}]}, {"action": {"name": "identity:list_projects_for_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_projects_for_endpoint"}]}, {"action": {"name": "identity:add_endpoint_to_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:add_endpoint_to_project"}]}, {"action": {"name": "identity:check_endpoint_in_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_endpoint_in_project"}]}, {"action": {"name": "identity:list_endpoints_for_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_endpoints_for_project"}]}, {"action": {"name": "identity:remove_endpoint_from_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:remove_endpoint_from_project"}]}, {"action": {"name": "identity:create_endpoint_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_endpoint_group"}]}, {"action": {"name": "identity:list_endpoint_groups"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_endpoint_groups"}]}, {"action": {"name": "identity:get_endpoint_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_endpoint_group"}]}, {"action": {"name": "identity:update_endpoint_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_endpoint_group"}]}, {"action": {"name": "identity:delete_endpoint_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_endpoint_group"}]}, {"action": {"name": "identity:list_projects_associated_with_endpoint_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_projects_associated_with_endpoint_group"}]}, {"action": {"name": "identity:list_endpoints_associated_with_endpoint_group"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_endpoints_associated_with_endpoint_group"}]}, {"action": {"name": "identity:get_endpoint_group_in_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_endpoint_group_in_project"}]}, {"action": {"name": "identity:list_endpoint_groups_for_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_endpoint_groups_for_project"}]}, {"action": {"name": "identity:add_endpoint_group_to_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:add_endpoint_group_to_project"}]}, {"action": {"name": "identity:remove_endpoint_group_from_project"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:remove_endpoint_group_from_project"}]}, {"action": {"name": "identity:create_identity_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_identity_provider"}]}, {"action": {"name": "identity:list_identity_providers"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_identity_providers"}]}, {"action": {"name": "identity:get_identity_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_identity_provider"}]}, {"action": {"name": "identity:update_identity_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_identity_provider"}]}, {"action": {"name": "identity:delete_identity_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_identity_provider"}]}, {"action": {"name": "identity:create_protocol"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_protocol"}]}, {"action": {"name": "identity:update_protocol"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_protocol"}]}, {"action": {"name": "identity:get_protocol"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_protocol"}]}, {"action": {"name": "identity:list_protocols"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_protocols"}]}, {"action": {"name": "identity:delete_protocol"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_protocol"}]}, {"action": {"name": "identity:create_mapping"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_mapping"}]}, {"action": {"name": "identity:get_mapping"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_mapping"}]}, {"action": {"name": "identity:list_mappings"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_mappings"}]}, {"action": {"name": "identity:delete_mapping"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_mapping"}]}, {"action": {"name": "identity:update_mapping"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_mapping"}]}, {"action": {"name": "identity:create_service_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_service_provider"}]}, {"action": {"name": "identity:list_service_providers"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_service_providers"}]}, {"action": {"name": "identity:get_service_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_service_provider"}]}, {"action": {"name": "identity:update_service_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_service_provider"}]}, {"action": {"name": "identity:delete_service_provider"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_service_provider"}]}, {"action": {"name": "identity:get_auth_catalog"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_auth_catalog"}]}, {"action": {"name": "identity:get_auth_projects"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_auth_projects"}]}, {"action": {"name": "identity:get_auth_domains"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_auth_domains"}]}, {"action": {"name": "identity:get_auth_system"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_auth_system"}]}, {"action": {"name": "identity:list_projects_for_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_projects_for_user"}]}, {"action": {"name": "identity:list_domains_for_user"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_domains_for_user"}]}, {"action": {"name": "identity:list_revoke_events"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_revoke_events"}]}, {"action": {"name": "identity:create_policy_association_for_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_policy_association_for_endpoint"}]}, {"action": {"name": "identity:check_policy_association_for_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_policy_association_for_endpoint"}]}, {"action": {"name": "identity:delete_policy_association_for_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_policy_association_for_endpoint"}]}, {"action": {"name": "identity:create_policy_association_for_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_policy_association_for_service"}]}, {"action": {"name": "identity:check_policy_association_for_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_policy_association_for_service"}]}, {"action": {"name": "identity:delete_policy_association_for_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_policy_association_for_service"}]}, {"action": {"name": "identity:create_policy_association_for_region_and_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_policy_association_for_region_and_service"}]}, {"action": {"name": "identity:check_policy_association_for_region_and_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:check_policy_association_for_region_and_service"}]}, {"action": {"name": "identity:delete_policy_association_for_region_and_service"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_policy_association_for_region_and_service"}]}, {"action": {"name": "identity:get_policy_for_endpoint"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_policy_for_endpoint"}]}, {"action": {"name": "identity:list_endpoints_for_policy"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_endpoints_for_policy"}]}, {"action": {"name": "identity:create_domain_config"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_domain_config"}]}, {"action": {"name": "identity:get_domain_config"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_domain_config"}]}, {"action": {"name": "identity:get_security_compliance_domain_config"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_security_compliance_domain_config"}]}, {"action": {"name": "identity:update_domain_config"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:update_domain_config"}]}, {"action": {"name": "identity:delete_domain_config"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_domain_config"}]}, {"action": {"name": "identity:get_domain_config_default"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_domain_config_default"}]}, {"action": {"name": "identity:get_application_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:get_application_credential"}]}, {"action": {"name": "identity:list_application_credentials"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:list_application_credentials"}]}, {"action": {"name": "identity:create_application_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:create_application_credential"}]}, {"action": {"name": "identity:delete_application_credential"}, "category": {"name": "action_id"}, "assignments": [{"name": "identity:delete_application_credential"}]}], "meta_rules": [{"name": "rbac", "description": "", "subject_categories": [{"name": "role"}], "object_categories": [{"name": "id"}], "action_categories": [{"name": "action_id"}]}], "rules": [{"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "delete_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_images"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "modify_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "publicize_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "communitize_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "copy_from"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "download_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "upload_image"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "delete_image_location"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_image_location"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "set_image_location"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_member"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "delete_member"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_member"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_members"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "modify_member"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "manage_image_cache"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_task"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_tasks"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_task"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "modify_task"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "tasks_api_access"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "deactivate"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "reactivate"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_namespace"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_namespaces"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "modify_metadef_namespace"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_metadef_namespace"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_object"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_objects"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "modify_metadef_object"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_metadef_object"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "list_metadef_resource_types"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_resource_type"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_metadef_resource_type_association"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_property"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_properties"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "modify_metadef_property"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_metadef_property"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_tag"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_metadef_tags"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "modify_metadef_tag"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_metadef_tag"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "add_metadef_tags"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_region"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_regions"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_region"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_region"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_region"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_services"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_endpoints"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_registered_limit"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_registered_limits"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_registered_limits"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_registered_limits"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_registered_limit"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_limit"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_limits"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_limits"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_limits"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_limit"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_domain"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_domains"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_domain"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_domain"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_domain"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_and_matching_target_project_domain_id"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_and_matching_project_domain_id"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_projects"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_user_projects"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_project_tag"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_project_tag"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_project_tag"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_project_tags"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_project_tags"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_project_tags"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_and_matching_target_user_domain_id"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_and_matching_user_domain_id"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_users"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_and_matching_target_group_domain_id"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_and_matching_group_domain_id"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_groups"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_groups_for_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_users_in_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:remove_user_from_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_user_in_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:add_user_to_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_credentials"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:ec2_get_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:ec2_list_credentials"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:ec2_create_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:ec2_delete_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_domain_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_domain_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_domain_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_domain_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_domain_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_matches_domain_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "get_domain_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_matches_target_domain_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "project_admin_matches_target_domain_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "list_domain_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_matches_filter_on_list_domain_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "project_admin_matches_filter_on_list_domain_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_and_matching_prior_role_domain_id"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "implied_role_matches_prior_role_domain_or_global"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_implied_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_implied_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_implied_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_implied_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_role_inference_rules"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_implied_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_system_grants_for_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_system_grant_for_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_system_grant_for_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:revoke_system_grant_for_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_system_grants_for_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_system_grant_for_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_system_grant_for_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:revoke_system_grant_for_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_grant"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_grant"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:revoke_grant"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_for_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_for_global_role_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_for_domain_role_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_grant_match"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "project_admin_for_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "project_admin_for_global_role_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "project_admin_for_domain_role_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "domain_admin_for_list_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "project_admin_for_list_grants"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_on_domain_filter"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_on_project_filter"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "admin_on_domain_of_project_filter"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_role_assignments"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_role_assignments_for_tree"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_policy"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_policies"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_policy"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_policy"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_policy"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_token"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:validate_token"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:validate_token_head"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:revocation_list"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:revoke_token"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_trust"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_trusts"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_roles_for_trust"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_role_for_trust"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_trust"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_trust"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_consumer"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_consumer"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_consumers"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_consumer"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_consumer"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:authorize_request_token"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_access_token_roles"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_access_token_role"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_access_tokens"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_access_token"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_access_token"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_projects_for_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:add_endpoint_to_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_endpoint_in_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_endpoints_for_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:remove_endpoint_from_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_endpoint_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_endpoint_groups"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_endpoint_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_endpoint_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_endpoint_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_projects_associated_with_endpoint_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_endpoints_associated_with_endpoint_group"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_endpoint_group_in_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_endpoint_groups_for_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:add_endpoint_group_to_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:remove_endpoint_group_from_project"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_identity_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_identity_providers"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_identity_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_identity_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_identity_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_protocol"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_protocol"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_protocol"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_protocols"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_protocol"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_mapping"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_mapping"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_mappings"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_mapping"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_mapping"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_service_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_service_providers"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_service_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_service_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_service_provider"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_auth_catalog"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_auth_projects"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_auth_domains"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_auth_system"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_projects_for_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_domains_for_user"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_revoke_events"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_policy_association_for_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_policy_association_for_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_policy_association_for_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_policy_association_for_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_policy_association_for_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_policy_association_for_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_policy_association_for_region_and_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:check_policy_association_for_region_and_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_policy_association_for_region_and_service"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_policy_for_endpoint"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_endpoints_for_policy"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_domain_config"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_domain_config"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_security_compliance_domain_config"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:update_domain_config"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_domain_config"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_domain_config_default"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:get_application_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:list_application_credentials"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:create_application_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}, {"meta_rule": {"name": "rbac"}, "rule": {"subject_data": [{"name": "admin"}], "object_data": [{"name": "all_vm"}], "action_data": [{"name": "identity:delete_application_credential"}]}, "policy": {"name": "OpenStack RBAC Policy"}, "instructions": [{"decision": "grant"}], "enabled": true}]}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/opst_rbac_nova.json b/moon_engine/tests/func_policies/opst_rbac_nova.json new file mode 100644 index 00000000..2d5b9016 --- /dev/null +++ b/moon_engine/tests/func_policies/opst_rbac_nova.json @@ -0,0 +1,27158 @@ +{ + "policies": [ + { + "name": "OpenStack RBAC Policy", + "genre": "authz", + "description": "A RBAC policy similar of what you can find through policy.json files", + "model": { + "name": "OPST_RBAC" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "OPST_RBAC", + "description": "", + "meta_rules": [ + { + "name": "rbac" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "a role in OpenStack" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "the admin role", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "member", + "description": "the member role", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": { + "name": "admin" + }, + "category": { + "name": "role" + }, + "assignments": [ + { + "name": "admin" + }, + { + "name": "member" + } + ] + } + ], + "objects": [ + { + "name": "all_vm", + "description": "", + "extra": {}, + "policies": [ + { + "name": "OpenStack RBAC Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "the UID of each virtual machine" + } + ], + "object_data": [ + { + "name": "all_vm", + "description": "represents all virtual machines in this project", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": { + "name": "all_vm" + }, + "category": { + "name": "id" + }, + "assignments": [ + { + "name": "all_vm" + } + ] + } + ], + "actions": [ + { + "name": "cells_scheduler_filter:TargetCellFilter", + "description": "cells_scheduler_filter:TargetCellFilter action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create", + "description": "compute:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create:attach_network", + "description": "compute:create:attach_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create:attach_volume", + "description": "compute:create:attach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:create:forced_host", + "description": "compute:create:forced_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get", + "description": "compute:get action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all", + "description": "compute:get_all action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all_tenants", + "description": "compute:get_all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:update", + "description": "compute:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_instance_metadata", + "description": "compute:get_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all_instance_metadata", + "description": "compute:get_all_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_all_instance_system_metadata", + "description": "compute:get_all_instance_system_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:update_instance_metadata", + "description": "compute:update_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:delete_instance_metadata", + "description": "compute:delete_instance_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_instance_faults", + "description": "compute:get_instance_faults action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_diagnostics", + "description": "compute:get_diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_instance_diagnostics", + "description": "compute:get_instance_diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:start", + "description": "compute:start action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:stop", + "description": "compute:stop action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_lock", + "description": "compute:get_lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:lock", + "description": "compute:lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unlock", + "description": "compute:unlock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unlock_override", + "description": "compute:unlock_override action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_vnc_console", + "description": "compute:get_vnc_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_spice_console", + "description": "compute:get_spice_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_rdp_console", + "description": "compute:get_rdp_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_serial_console", + "description": "compute:get_serial_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_mks_console", + "description": "compute:get_mks_console action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:get_console_output", + "description": "compute:get_console_output action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:reset_network", + "description": "compute:reset_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:inject_network_info", + "description": "compute:inject_network_info action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:add_fixed_ip", + "description": "compute:add_fixed_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:remove_fixed_ip", + "description": "compute:remove_fixed_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:attach_volume", + "description": "compute:attach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:detach_volume", + "description": "compute:detach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:swap_volume", + "description": "compute:swap_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:attach_interface", + "description": "compute:attach_interface action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:detach_interface", + "description": "compute:detach_interface action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:set_admin_password", + "description": "compute:set_admin_password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:rescue", + "description": "compute:rescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unrescue", + "description": "compute:unrescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:suspend", + "description": "compute:suspend action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:resume", + "description": "compute:resume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:pause", + "description": "compute:pause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unpause", + "description": "compute:unpause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:shelve", + "description": "compute:shelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:shelve_offload", + "description": "compute:shelve_offload action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:unshelve", + "description": "compute:unshelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:snapshot", + "description": "compute:snapshot action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:snapshot_volume_backed", + "description": "compute:snapshot_volume_backed action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:backup", + "description": "compute:backup action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:resize", + "description": "compute:resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:confirm_resize", + "description": "compute:confirm_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:revert_resize", + "description": "compute:revert_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:rebuild", + "description": "compute:rebuild action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:reboot", + "description": "compute:reboot action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:delete", + "description": "compute:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:soft_delete", + "description": "compute:soft_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:force_delete", + "description": "compute:force_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:security_groups:add_to_instance", + "description": "compute:security_groups:add_to_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:security_groups:remove_from_instance", + "description": "compute:security_groups:remove_from_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:restore", + "description": "compute:restore action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:volume_snapshot_create", + "description": "compute:volume_snapshot_create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute:volume_snapshot_delete", + "description": "compute:volume_snapshot_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:accounts", + "description": "compute_extension:accounts action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions", + "description": "compute_extension:admin_actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:pause", + "description": "compute_extension:admin_actions:pause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:unpause", + "description": "compute_extension:admin_actions:unpause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:suspend", + "description": "compute_extension:admin_actions:suspend action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:resume", + "description": "compute_extension:admin_actions:resume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:lock", + "description": "compute_extension:admin_actions:lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:unlock", + "description": "compute_extension:admin_actions:unlock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:resetNetwork", + "description": "compute_extension:admin_actions:resetNetwork action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:injectNetworkInfo", + "description": "compute_extension:admin_actions:injectNetworkInfo action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:createBackup", + "description": "compute_extension:admin_actions:createBackup action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:migrateLive", + "description": "compute_extension:admin_actions:migrateLive action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:resetState", + "description": "compute_extension:admin_actions:resetState action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:admin_actions:migrate", + "description": "compute_extension:admin_actions:migrate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:aggregates", + "description": "compute_extension:aggregates action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:agents", + "description": "compute_extension:agents action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:attach_interfaces", + "description": "compute_extension:attach_interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:baremetal_nodes", + "description": "compute_extension:baremetal_nodes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells", + "description": "compute_extension:cells action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:create", + "description": "compute_extension:cells:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:delete", + "description": "compute_extension:cells:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:update", + "description": "compute_extension:cells:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cells:sync_instances", + "description": "compute_extension:cells:sync_instances action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:certificates", + "description": "compute_extension:certificates action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cloudpipe", + "description": "compute_extension:cloudpipe action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:cloudpipe_update", + "description": "compute_extension:cloudpipe_update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:config_drive", + "description": "compute_extension:config_drive action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:console_output", + "description": "compute_extension:console_output action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:consoles", + "description": "compute_extension:consoles action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:createserverext", + "description": "compute_extension:createserverext action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:deferred_delete", + "description": "compute_extension:deferred_delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:disk_config", + "description": "compute_extension:disk_config action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:evacuate", + "description": "compute_extension:evacuate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_server_attributes", + "description": "compute_extension:extended_server_attributes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_status", + "description": "compute_extension:extended_status action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_availability_zone", + "description": "compute_extension:extended_availability_zone action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_ips", + "description": "compute_extension:extended_ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_ips_mac", + "description": "compute_extension:extended_ips_mac action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_vif_net", + "description": "compute_extension:extended_vif_net action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:extended_volumes", + "description": "compute_extension:extended_volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:fixed_ips", + "description": "compute_extension:fixed_ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_access", + "description": "compute_extension:flavor_access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_access:addTenantAccess", + "description": "compute_extension:flavor_access:addTenantAccess action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_access:removeTenantAccess", + "description": "compute_extension:flavor_access:removeTenantAccess action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_disabled", + "description": "compute_extension:flavor_disabled action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_rxtx", + "description": "compute_extension:flavor_rxtx action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavor_swap", + "description": "compute_extension:flavor_swap action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextradata", + "description": "compute_extension:flavorextradata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:index", + "description": "compute_extension:flavorextraspecs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:show", + "description": "compute_extension:flavorextraspecs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:create", + "description": "compute_extension:flavorextraspecs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:update", + "description": "compute_extension:flavorextraspecs:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavorextraspecs:delete", + "description": "compute_extension:flavorextraspecs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:flavormanage", + "description": "compute_extension:flavormanage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ip_dns", + "description": "compute_extension:floating_ip_dns action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ip_pools", + "description": "compute_extension:floating_ip_pools action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ips", + "description": "compute_extension:floating_ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:floating_ips_bulk", + "description": "compute_extension:floating_ips_bulk action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:fping", + "description": "compute_extension:fping action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:fping:all_tenants", + "description": "compute_extension:fping:all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:hide_server_addresses", + "description": "compute_extension:hide_server_addresses action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:hosts", + "description": "compute_extension:hosts action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:hypervisors", + "description": "compute_extension:hypervisors action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:image_size", + "description": "compute_extension:image_size action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:instance_actions", + "description": "compute_extension:instance_actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:instance_actions:events", + "description": "compute_extension:instance_actions:events action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:instance_usage_audit_log", + "description": "compute_extension:instance_usage_audit_log action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs", + "description": "compute_extension:keypairs action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:index", + "description": "compute_extension:keypairs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:show", + "description": "compute_extension:keypairs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:create", + "description": "compute_extension:keypairs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:keypairs:delete", + "description": "compute_extension:keypairs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:multinic", + "description": "compute_extension:multinic action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:networks", + "description": "compute_extension:networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:networks:view", + "description": "compute_extension:networks:view action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:networks_associate", + "description": "compute_extension:networks_associate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-tenant-networks", + "description": "compute_extension:os-tenant-networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quotas:show", + "description": "compute_extension:quotas:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quotas:update", + "description": "compute_extension:quotas:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quotas:delete", + "description": "compute_extension:quotas:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:quota_classes", + "description": "compute_extension:quota_classes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:rescue", + "description": "compute_extension:rescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:security_group_default_rules", + "description": "compute_extension:security_group_default_rules action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:security_groups", + "description": "compute_extension:security_groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_diagnostics", + "description": "compute_extension:server_diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_groups", + "description": "compute_extension:server_groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_password", + "description": "compute_extension:server_password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:server_usage", + "description": "compute_extension:server_usage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:services", + "description": "compute_extension:services action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:shelve", + "description": "compute_extension:shelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:shelveOffload", + "description": "compute_extension:shelveOffload action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:simple_tenant_usage:show", + "description": "compute_extension:simple_tenant_usage:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:simple_tenant_usage:list", + "description": "compute_extension:simple_tenant_usage:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:unshelve", + "description": "compute_extension:unshelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:users", + "description": "compute_extension:users action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:virtual_interfaces", + "description": "compute_extension:virtual_interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:virtual_storage_arrays", + "description": "compute_extension:virtual_storage_arrays action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volumes", + "description": "compute_extension:volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:index", + "description": "compute_extension:volume_attachments:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:show", + "description": "compute_extension:volume_attachments:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:create", + "description": "compute_extension:volume_attachments:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:update", + "description": "compute_extension:volume_attachments:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volume_attachments:delete", + "description": "compute_extension:volume_attachments:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:volumetypes", + "description": "compute_extension:volumetypes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:availability_zone:list", + "description": "compute_extension:availability_zone:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:availability_zone:detail", + "description": "compute_extension:availability_zone:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:used_limits_for_admin", + "description": "compute_extension:used_limits_for_admin action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:migrations:index", + "description": "compute_extension:migrations:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:create", + "description": "compute_extension:os-assisted-volume-snapshots:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:delete", + "description": "compute_extension:os-assisted-volume-snapshots:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:console_auth_tokens", + "description": "compute_extension:console_auth_tokens action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "compute_extension:os-server-external-events:create", + "description": "compute_extension:os-server-external-events:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_all", + "description": "network:get_all action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get", + "description": "network:get action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:create", + "description": "network:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:delete", + "description": "network:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:associate", + "description": "network:associate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:disassociate", + "description": "network:disassociate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_vifs_by_instance", + "description": "network:get_vifs_by_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:allocate_for_instance", + "description": "network:allocate_for_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:deallocate_for_instance", + "description": "network:deallocate_for_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:validate_networks", + "description": "network:validate_networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_instance_uuids_by_ip_filter", + "description": "network:get_instance_uuids_by_ip_filter action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_instance_id_by_floating_address", + "description": "network:get_instance_id_by_floating_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:setup_networks_on_host", + "description": "network:setup_networks_on_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_backdoor_port", + "description": "network:get_backdoor_port action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ip", + "description": "network:get_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ip_pools", + "description": "network:get_floating_ip_pools action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ip_by_address", + "description": "network:get_floating_ip_by_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ips_by_project", + "description": "network:get_floating_ips_by_project action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_floating_ips_by_fixed_address", + "description": "network:get_floating_ips_by_fixed_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:allocate_floating_ip", + "description": "network:allocate_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:associate_floating_ip", + "description": "network:associate_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:disassociate_floating_ip", + "description": "network:disassociate_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:release_floating_ip", + "description": "network:release_floating_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:migrate_instance_start", + "description": "network:migrate_instance_start action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:migrate_instance_finish", + "description": "network:migrate_instance_finish action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_fixed_ip", + "description": "network:get_fixed_ip action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_fixed_ip_by_address", + "description": "network:get_fixed_ip_by_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:add_fixed_ip_to_instance", + "description": "network:add_fixed_ip_to_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:remove_fixed_ip_from_instance", + "description": "network:remove_fixed_ip_from_instance action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:add_network_to_project", + "description": "network:add_network_to_project action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_instance_nw_info", + "description": "network:get_instance_nw_info action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_dns_domains", + "description": "network:get_dns_domains action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:add_dns_entry", + "description": "network:add_dns_entry action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:modify_dns_entry", + "description": "network:modify_dns_entry action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:delete_dns_entry", + "description": "network:delete_dns_entry action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_dns_entries_by_address", + "description": "network:get_dns_entries_by_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_dns_entries_by_name", + "description": "network:get_dns_entries_by_name action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:create_private_dns_domain", + "description": "network:create_private_dns_domain action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:create_public_dns_domain", + "description": "network:create_public_dns_domain action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:delete_dns_domain", + "description": "network:delete_dns_domain action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:attach_external_network", + "description": "network:attach_external_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "network:get_vif_by_mac_address", + "description": "network:get_vif_by_mac_address action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:detail:get_all_tenants", + "description": "os_compute_api:servers:detail:get_all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:index:get_all_tenants", + "description": "os_compute_api:servers:index:get_all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:confirm_resize", + "description": "os_compute_api:servers:confirm_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create", + "description": "os_compute_api:servers:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create:attach_network", + "description": "os_compute_api:servers:create:attach_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create:attach_volume", + "description": "os_compute_api:servers:create:attach_volume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create:forced_host", + "description": "os_compute_api:servers:create:forced_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:delete", + "description": "os_compute_api:servers:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:update", + "description": "os_compute_api:servers:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:detail", + "description": "os_compute_api:servers:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:index", + "description": "os_compute_api:servers:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:reboot", + "description": "os_compute_api:servers:reboot action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:rebuild", + "description": "os_compute_api:servers:rebuild action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:resize", + "description": "os_compute_api:servers:resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:revert_resize", + "description": "os_compute_api:servers:revert_resize action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:show", + "description": "os_compute_api:servers:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create_image", + "description": "os_compute_api:servers:create_image action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:create_image:allow_volume_backed", + "description": "os_compute_api:servers:create_image:allow_volume_backed action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:start", + "description": "os_compute_api:servers:start action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:stop", + "description": "os_compute_api:servers:stop action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-access-ips:discoverable", + "description": "os_compute_api:os-access-ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-access-ips", + "description": "os_compute_api:os-access-ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions", + "description": "os_compute_api:os-admin-actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:discoverable", + "description": "os_compute_api:os-admin-actions:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:reset_network", + "description": "os_compute_api:os-admin-actions:reset_network action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:inject_network_info", + "description": "os_compute_api:os-admin-actions:inject_network_info action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-actions:reset_state", + "description": "os_compute_api:os-admin-actions:reset_state action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-password", + "description": "os_compute_api:os-admin-password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-admin-password:discoverable", + "description": "os_compute_api:os-admin-password:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:discoverable", + "description": "os_compute_api:os-aggregates:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:index", + "description": "os_compute_api:os-aggregates:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:create", + "description": "os_compute_api:os-aggregates:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:show", + "description": "os_compute_api:os-aggregates:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:update", + "description": "os_compute_api:os-aggregates:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:delete", + "description": "os_compute_api:os-aggregates:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:add_host", + "description": "os_compute_api:os-aggregates:add_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:remove_host", + "description": "os_compute_api:os-aggregates:remove_host action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-aggregates:set_metadata", + "description": "os_compute_api:os-aggregates:set_metadata action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-agents", + "description": "os_compute_api:os-agents action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-agents:discoverable", + "description": "os_compute_api:os-agents:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-attach-interfaces", + "description": "os_compute_api:os-attach-interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-attach-interfaces:discoverable", + "description": "os_compute_api:os-attach-interfaces:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-baremetal-nodes", + "description": "os_compute_api:os-baremetal-nodes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-baremetal-nodes:discoverable", + "description": "os_compute_api:os-baremetal-nodes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable", + "description": "os_compute_api:os-block-device-mapping-v1:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells", + "description": "os_compute_api:os-cells action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:create", + "description": "os_compute_api:os-cells:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:delete", + "description": "os_compute_api:os-cells:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:update", + "description": "os_compute_api:os-cells:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:sync_instances", + "description": "os_compute_api:os-cells:sync_instances action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cells:discoverable", + "description": "os_compute_api:os-cells:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-certificates:create", + "description": "os_compute_api:os-certificates:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-certificates:show", + "description": "os_compute_api:os-certificates:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-certificates:discoverable", + "description": "os_compute_api:os-certificates:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cloudpipe", + "description": "os_compute_api:os-cloudpipe action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-cloudpipe:discoverable", + "description": "os_compute_api:os-cloudpipe:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-config-drive", + "description": "os_compute_api:os-config-drive action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:discoverable", + "description": "os_compute_api:os-consoles:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:create", + "description": "os_compute_api:os-consoles:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:delete", + "description": "os_compute_api:os-consoles:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:index", + "description": "os_compute_api:os-consoles:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-consoles:show", + "description": "os_compute_api:os-consoles:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-console-output:discoverable", + "description": "os_compute_api:os-console-output:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-console-output", + "description": "os_compute_api:os-console-output action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-remote-consoles", + "description": "os_compute_api:os-remote-consoles action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-remote-consoles:discoverable", + "description": "os_compute_api:os-remote-consoles:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-create-backup:discoverable", + "description": "os_compute_api:os-create-backup:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-create-backup", + "description": "os_compute_api:os-create-backup action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-deferred-delete", + "description": "os_compute_api:os-deferred-delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-deferred-delete:discoverable", + "description": "os_compute_api:os-deferred-delete:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-disk-config", + "description": "os_compute_api:os-disk-config action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-disk-config:discoverable", + "description": "os_compute_api:os-disk-config:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-evacuate", + "description": "os_compute_api:os-evacuate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-evacuate:discoverable", + "description": "os_compute_api:os-evacuate:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-server-attributes", + "description": "os_compute_api:os-extended-server-attributes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-server-attributes:discoverable", + "description": "os_compute_api:os-extended-server-attributes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-status", + "description": "os_compute_api:os-extended-status action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-status:discoverable", + "description": "os_compute_api:os-extended-status:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-availability-zone", + "description": "os_compute_api:os-extended-availability-zone action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-availability-zone:discoverable", + "description": "os_compute_api:os-extended-availability-zone:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:extensions", + "description": "os_compute_api:extensions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:extension_info:discoverable", + "description": "os_compute_api:extension_info:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-volumes", + "description": "os_compute_api:os-extended-volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-extended-volumes:discoverable", + "description": "os_compute_api:os-extended-volumes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fixed-ips", + "description": "os_compute_api:os-fixed-ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fixed-ips:discoverable", + "description": "os_compute_api:os-fixed-ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access", + "description": "os_compute_api:os-flavor-access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access:discoverable", + "description": "os_compute_api:os-flavor-access:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access", + "description": "os_compute_api:os-flavor-access:remove_tenant_access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-access:add_tenant_access", + "description": "os_compute_api:os-flavor-access:add_tenant_access action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-rxtx", + "description": "os_compute_api:os-flavor-rxtx action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-rxtx:discoverable", + "description": "os_compute_api:os-flavor-rxtx:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:flavors:discoverable", + "description": "os_compute_api:flavors:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable", + "description": "os_compute_api:os-flavor-extra-specs:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:index", + "description": "os_compute_api:os-flavor-extra-specs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:show", + "description": "os_compute_api:os-flavor-extra-specs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:create", + "description": "os_compute_api:os-flavor-extra-specs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:update", + "description": "os_compute_api:os-flavor-extra-specs:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-extra-specs:delete", + "description": "os_compute_api:os-flavor-extra-specs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-manage:discoverable", + "description": "os_compute_api:os-flavor-manage:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-flavor-manage", + "description": "os_compute_api:os-flavor-manage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns", + "description": "os_compute_api:os-floating-ip-dns action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns:discoverable", + "description": "os_compute_api:os-floating-ip-dns:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:update", + "description": "os_compute_api:os-floating-ip-dns:domain:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete", + "description": "os_compute_api:os-floating-ip-dns:domain:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-pools", + "description": "os_compute_api:os-floating-ip-pools action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ip-pools:discoverable", + "description": "os_compute_api:os-floating-ip-pools:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips", + "description": "os_compute_api:os-floating-ips action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips:discoverable", + "description": "os_compute_api:os-floating-ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips-bulk", + "description": "os_compute_api:os-floating-ips-bulk action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable", + "description": "os_compute_api:os-floating-ips-bulk:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fping", + "description": "os_compute_api:os-fping action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fping:discoverable", + "description": "os_compute_api:os-fping:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-fping:all_tenants", + "description": "os_compute_api:os-fping:all_tenants action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hide-server-addresses", + "description": "os_compute_api:os-hide-server-addresses action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hide-server-addresses:discoverable", + "description": "os_compute_api:os-hide-server-addresses:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hosts", + "description": "os_compute_api:os-hosts action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hosts:discoverable", + "description": "os_compute_api:os-hosts:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hypervisors", + "description": "os_compute_api:os-hypervisors action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-hypervisors:discoverable", + "description": "os_compute_api:os-hypervisors:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:images:discoverable", + "description": "os_compute_api:images:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:image-size", + "description": "os_compute_api:image-size action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:image-size:discoverable", + "description": "os_compute_api:image-size:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-actions", + "description": "os_compute_api:os-instance-actions action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-actions:discoverable", + "description": "os_compute_api:os-instance-actions:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-actions:events", + "description": "os_compute_api:os-instance-actions:events action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-usage-audit-log", + "description": "os_compute_api:os-instance-usage-audit-log action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable", + "description": "os_compute_api:os-instance-usage-audit-log:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:ips:discoverable", + "description": "os_compute_api:ips:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:ips:index", + "description": "os_compute_api:ips:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:ips:show", + "description": "os_compute_api:ips:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:discoverable", + "description": "os_compute_api:os-keypairs:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs", + "description": "os_compute_api:os-keypairs action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:index", + "description": "os_compute_api:os-keypairs:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:show", + "description": "os_compute_api:os-keypairs:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:create", + "description": "os_compute_api:os-keypairs:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-keypairs:delete", + "description": "os_compute_api:os-keypairs:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:limits:discoverable", + "description": "os_compute_api:limits:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:limits", + "description": "os_compute_api:limits action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:discoverable", + "description": "os_compute_api:os-lock-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:lock", + "description": "os_compute_api:os-lock-server:lock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:unlock", + "description": "os_compute_api:os-lock-server:unlock action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override", + "description": "os_compute_api:os-lock-server:unlock:unlock_override action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrate-server:discoverable", + "description": "os_compute_api:os-migrate-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrate-server:migrate", + "description": "os_compute_api:os-migrate-server:migrate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrate-server:migrate_live", + "description": "os_compute_api:os-migrate-server:migrate_live action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-multinic", + "description": "os_compute_api:os-multinic action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-multinic:discoverable", + "description": "os_compute_api:os-multinic:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks", + "description": "os_compute_api:os-networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks:view", + "description": "os_compute_api:os-networks:view action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks:discoverable", + "description": "os_compute_api:os-networks:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks-associate", + "description": "os_compute_api:os-networks-associate action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-networks-associate:discoverable", + "description": "os_compute_api:os-networks-associate:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pause-server:discoverable", + "description": "os_compute_api:os-pause-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pause-server:pause", + "description": "os_compute_api:os-pause-server:pause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pause-server:unpause", + "description": "os_compute_api:os-pause-server:unpause action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:pci_servers", + "description": "os_compute_api:os-pci:pci_servers action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:discoverable", + "description": "os_compute_api:os-pci:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:index", + "description": "os_compute_api:os-pci:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:detail", + "description": "os_compute_api:os-pci:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-pci:show", + "description": "os_compute_api:os-pci:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-personality:discoverable", + "description": "os_compute_api:os-personality:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable", + "description": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:discoverable", + "description": "os_compute_api:os-quota-sets:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:show", + "description": "os_compute_api:os-quota-sets:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:defaults", + "description": "os_compute_api:os-quota-sets:defaults action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:update", + "description": "os_compute_api:os-quota-sets:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:delete", + "description": "os_compute_api:os-quota-sets:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-sets:detail", + "description": "os_compute_api:os-quota-sets:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-class-sets:update", + "description": "os_compute_api:os-quota-class-sets:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-class-sets:show", + "description": "os_compute_api:os-quota-class-sets:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-quota-class-sets:discoverable", + "description": "os_compute_api:os-quota-class-sets:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-rescue", + "description": "os_compute_api:os-rescue action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-rescue:discoverable", + "description": "os_compute_api:os-rescue:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-scheduler-hints:discoverable", + "description": "os_compute_api:os-scheduler-hints:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-group-default-rules:discoverable", + "description": "os_compute_api:os-security-group-default-rules:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-group-default-rules", + "description": "os_compute_api:os-security-group-default-rules action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-groups", + "description": "os_compute_api:os-security-groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-security-groups:discoverable", + "description": "os_compute_api:os-security-groups:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-diagnostics", + "description": "os_compute_api:os-server-diagnostics action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-diagnostics:discoverable", + "description": "os_compute_api:os-server-diagnostics:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-password", + "description": "os_compute_api:os-server-password action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-password:discoverable", + "description": "os_compute_api:os-server-password:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-usage", + "description": "os_compute_api:os-server-usage action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-usage:discoverable", + "description": "os_compute_api:os-server-usage:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-groups", + "description": "os_compute_api:os-server-groups action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-groups:discoverable", + "description": "os_compute_api:os-server-groups:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-services", + "description": "os_compute_api:os-services action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-services:discoverable", + "description": "os_compute_api:os-services:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:discoverable", + "description": "os_compute_api:server-metadata:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:index", + "description": "os_compute_api:server-metadata:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:show", + "description": "os_compute_api:server-metadata:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:delete", + "description": "os_compute_api:server-metadata:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:create", + "description": "os_compute_api:server-metadata:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:update", + "description": "os_compute_api:server-metadata:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:server-metadata:update_all", + "description": "os_compute_api:server-metadata:update_all action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:servers:discoverable", + "description": "os_compute_api:servers:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:shelve", + "description": "os_compute_api:os-shelve:shelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:shelve:discoverable", + "description": "os_compute_api:os-shelve:shelve:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:shelve_offload", + "description": "os_compute_api:os-shelve:shelve_offload action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable", + "description": "os_compute_api:os-simple-tenant-usage:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-simple-tenant-usage:show", + "description": "os_compute_api:os-simple-tenant-usage:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-simple-tenant-usage:list", + "description": "os_compute_api:os-simple-tenant-usage:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-suspend-server:discoverable", + "description": "os_compute_api:os-suspend-server:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-suspend-server:suspend", + "description": "os_compute_api:os-suspend-server:suspend action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-suspend-server:resume", + "description": "os_compute_api:os-suspend-server:resume action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-tenant-networks", + "description": "os_compute_api:os-tenant-networks action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-tenant-networks:discoverable", + "description": "os_compute_api:os-tenant-networks:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-shelve:unshelve", + "description": "os_compute_api:os-shelve:unshelve action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-user-data:discoverable", + "description": "os_compute_api:os-user-data:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-virtual-interfaces", + "description": "os_compute_api:os-virtual-interfaces action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-virtual-interfaces:discoverable", + "description": "os_compute_api:os-virtual-interfaces:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes", + "description": "os_compute_api:os-volumes action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes:discoverable", + "description": "os_compute_api:os-volumes:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:index", + "description": "os_compute_api:os-volumes-attachments:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:show", + "description": "os_compute_api:os-volumes-attachments:show action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:create", + "description": "os_compute_api:os-volumes-attachments:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:update", + "description": "os_compute_api:os-volumes-attachments:update action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:delete", + "description": "os_compute_api:os-volumes-attachments:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-volumes-attachments:discoverable", + "description": "os_compute_api:os-volumes-attachments:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-availability-zone:list", + "description": "os_compute_api:os-availability-zone:list action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-availability-zone:discoverable", + "description": "os_compute_api:os-availability-zone:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-availability-zone:detail", + "description": "os_compute_api:os-availability-zone:detail action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-used-limits", + "description": "os_compute_api:os-used-limits action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-used-limits:discoverable", + "description": "os_compute_api:os-used-limits:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrations:index", + "description": "os_compute_api:os-migrations:index action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-migrations:discoverable", + "description": "os_compute_api:os-migrations:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:create", + "description": "os_compute_api:os-assisted-volume-snapshots:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete", + "description": "os_compute_api:os-assisted-volume-snapshots:delete action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable", + "description": "os_compute_api:os-assisted-volume-snapshots:discoverable action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-console-auth-tokens", + "description": "os_compute_api:os-console-auth-tokens action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + }, + { + "name": "os_compute_api:os-server-external-events:create", + "description": "os_compute_api:os-server-external-events:create action for nova", + "extra": { + "component": "nova" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "action_id", + "description": "" + } + ], + "action_data": [ + { + "name": "cells_scheduler_filter:TargetCellFilter", + "description": "cells_scheduler_filter:TargetCellFilter action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create", + "description": "compute:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create:attach_network", + "description": "compute:create:attach_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create:attach_volume", + "description": "compute:create:attach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:create:forced_host", + "description": "compute:create:forced_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get", + "description": "compute:get action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all", + "description": "compute:get_all action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all_tenants", + "description": "compute:get_all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:update", + "description": "compute:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_instance_metadata", + "description": "compute:get_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all_instance_metadata", + "description": "compute:get_all_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_all_instance_system_metadata", + "description": "compute:get_all_instance_system_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:update_instance_metadata", + "description": "compute:update_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:delete_instance_metadata", + "description": "compute:delete_instance_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_instance_faults", + "description": "compute:get_instance_faults action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_diagnostics", + "description": "compute:get_diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_instance_diagnostics", + "description": "compute:get_instance_diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:start", + "description": "compute:start action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:stop", + "description": "compute:stop action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_lock", + "description": "compute:get_lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:lock", + "description": "compute:lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unlock", + "description": "compute:unlock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unlock_override", + "description": "compute:unlock_override action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_vnc_console", + "description": "compute:get_vnc_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_spice_console", + "description": "compute:get_spice_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_rdp_console", + "description": "compute:get_rdp_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_serial_console", + "description": "compute:get_serial_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_mks_console", + "description": "compute:get_mks_console action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:get_console_output", + "description": "compute:get_console_output action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:reset_network", + "description": "compute:reset_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:inject_network_info", + "description": "compute:inject_network_info action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:add_fixed_ip", + "description": "compute:add_fixed_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:remove_fixed_ip", + "description": "compute:remove_fixed_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:attach_volume", + "description": "compute:attach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:detach_volume", + "description": "compute:detach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:swap_volume", + "description": "compute:swap_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:attach_interface", + "description": "compute:attach_interface action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:detach_interface", + "description": "compute:detach_interface action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:set_admin_password", + "description": "compute:set_admin_password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:rescue", + "description": "compute:rescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unrescue", + "description": "compute:unrescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:suspend", + "description": "compute:suspend action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:resume", + "description": "compute:resume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:pause", + "description": "compute:pause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unpause", + "description": "compute:unpause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:shelve", + "description": "compute:shelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:shelve_offload", + "description": "compute:shelve_offload action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:unshelve", + "description": "compute:unshelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:snapshot", + "description": "compute:snapshot action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:snapshot_volume_backed", + "description": "compute:snapshot_volume_backed action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:backup", + "description": "compute:backup action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:resize", + "description": "compute:resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:confirm_resize", + "description": "compute:confirm_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:revert_resize", + "description": "compute:revert_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:rebuild", + "description": "compute:rebuild action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:reboot", + "description": "compute:reboot action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:delete", + "description": "compute:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:soft_delete", + "description": "compute:soft_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:force_delete", + "description": "compute:force_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:security_groups:add_to_instance", + "description": "compute:security_groups:add_to_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:security_groups:remove_from_instance", + "description": "compute:security_groups:remove_from_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:restore", + "description": "compute:restore action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:volume_snapshot_create", + "description": "compute:volume_snapshot_create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute:volume_snapshot_delete", + "description": "compute:volume_snapshot_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:accounts", + "description": "compute_extension:accounts action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions", + "description": "compute_extension:admin_actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:pause", + "description": "compute_extension:admin_actions:pause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:unpause", + "description": "compute_extension:admin_actions:unpause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:suspend", + "description": "compute_extension:admin_actions:suspend action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:resume", + "description": "compute_extension:admin_actions:resume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:lock", + "description": "compute_extension:admin_actions:lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:unlock", + "description": "compute_extension:admin_actions:unlock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:resetNetwork", + "description": "compute_extension:admin_actions:resetNetwork action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:injectNetworkInfo", + "description": "compute_extension:admin_actions:injectNetworkInfo action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:createBackup", + "description": "compute_extension:admin_actions:createBackup action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:migrateLive", + "description": "compute_extension:admin_actions:migrateLive action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:resetState", + "description": "compute_extension:admin_actions:resetState action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:admin_actions:migrate", + "description": "compute_extension:admin_actions:migrate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:aggregates", + "description": "compute_extension:aggregates action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:agents", + "description": "compute_extension:agents action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:attach_interfaces", + "description": "compute_extension:attach_interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:baremetal_nodes", + "description": "compute_extension:baremetal_nodes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells", + "description": "compute_extension:cells action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:create", + "description": "compute_extension:cells:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:delete", + "description": "compute_extension:cells:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:update", + "description": "compute_extension:cells:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cells:sync_instances", + "description": "compute_extension:cells:sync_instances action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:certificates", + "description": "compute_extension:certificates action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cloudpipe", + "description": "compute_extension:cloudpipe action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:cloudpipe_update", + "description": "compute_extension:cloudpipe_update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:config_drive", + "description": "compute_extension:config_drive action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:console_output", + "description": "compute_extension:console_output action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:consoles", + "description": "compute_extension:consoles action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:createserverext", + "description": "compute_extension:createserverext action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:deferred_delete", + "description": "compute_extension:deferred_delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:disk_config", + "description": "compute_extension:disk_config action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:evacuate", + "description": "compute_extension:evacuate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_server_attributes", + "description": "compute_extension:extended_server_attributes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_status", + "description": "compute_extension:extended_status action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_availability_zone", + "description": "compute_extension:extended_availability_zone action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_ips", + "description": "compute_extension:extended_ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_ips_mac", + "description": "compute_extension:extended_ips_mac action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_vif_net", + "description": "compute_extension:extended_vif_net action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:extended_volumes", + "description": "compute_extension:extended_volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:fixed_ips", + "description": "compute_extension:fixed_ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_access", + "description": "compute_extension:flavor_access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_access:addTenantAccess", + "description": "compute_extension:flavor_access:addTenantAccess action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_access:removeTenantAccess", + "description": "compute_extension:flavor_access:removeTenantAccess action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_disabled", + "description": "compute_extension:flavor_disabled action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_rxtx", + "description": "compute_extension:flavor_rxtx action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavor_swap", + "description": "compute_extension:flavor_swap action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextradata", + "description": "compute_extension:flavorextradata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:index", + "description": "compute_extension:flavorextraspecs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:show", + "description": "compute_extension:flavorextraspecs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:create", + "description": "compute_extension:flavorextraspecs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:update", + "description": "compute_extension:flavorextraspecs:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavorextraspecs:delete", + "description": "compute_extension:flavorextraspecs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:flavormanage", + "description": "compute_extension:flavormanage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ip_dns", + "description": "compute_extension:floating_ip_dns action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ip_pools", + "description": "compute_extension:floating_ip_pools action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ips", + "description": "compute_extension:floating_ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:floating_ips_bulk", + "description": "compute_extension:floating_ips_bulk action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:fping", + "description": "compute_extension:fping action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:fping:all_tenants", + "description": "compute_extension:fping:all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:hide_server_addresses", + "description": "compute_extension:hide_server_addresses action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:hosts", + "description": "compute_extension:hosts action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:hypervisors", + "description": "compute_extension:hypervisors action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:image_size", + "description": "compute_extension:image_size action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:instance_actions", + "description": "compute_extension:instance_actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:instance_actions:events", + "description": "compute_extension:instance_actions:events action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:instance_usage_audit_log", + "description": "compute_extension:instance_usage_audit_log action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs", + "description": "compute_extension:keypairs action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:index", + "description": "compute_extension:keypairs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:show", + "description": "compute_extension:keypairs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:create", + "description": "compute_extension:keypairs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:keypairs:delete", + "description": "compute_extension:keypairs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:multinic", + "description": "compute_extension:multinic action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:networks", + "description": "compute_extension:networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:networks:view", + "description": "compute_extension:networks:view action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:networks_associate", + "description": "compute_extension:networks_associate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-tenant-networks", + "description": "compute_extension:os-tenant-networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quotas:show", + "description": "compute_extension:quotas:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quotas:update", + "description": "compute_extension:quotas:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quotas:delete", + "description": "compute_extension:quotas:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:quota_classes", + "description": "compute_extension:quota_classes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:rescue", + "description": "compute_extension:rescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:security_group_default_rules", + "description": "compute_extension:security_group_default_rules action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:security_groups", + "description": "compute_extension:security_groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_diagnostics", + "description": "compute_extension:server_diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_groups", + "description": "compute_extension:server_groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_password", + "description": "compute_extension:server_password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:server_usage", + "description": "compute_extension:server_usage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:services", + "description": "compute_extension:services action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:shelve", + "description": "compute_extension:shelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:shelveOffload", + "description": "compute_extension:shelveOffload action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:simple_tenant_usage:show", + "description": "compute_extension:simple_tenant_usage:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:simple_tenant_usage:list", + "description": "compute_extension:simple_tenant_usage:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:unshelve", + "description": "compute_extension:unshelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:users", + "description": "compute_extension:users action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:virtual_interfaces", + "description": "compute_extension:virtual_interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:virtual_storage_arrays", + "description": "compute_extension:virtual_storage_arrays action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volumes", + "description": "compute_extension:volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:index", + "description": "compute_extension:volume_attachments:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:show", + "description": "compute_extension:volume_attachments:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:create", + "description": "compute_extension:volume_attachments:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:update", + "description": "compute_extension:volume_attachments:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volume_attachments:delete", + "description": "compute_extension:volume_attachments:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:volumetypes", + "description": "compute_extension:volumetypes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:availability_zone:list", + "description": "compute_extension:availability_zone:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:availability_zone:detail", + "description": "compute_extension:availability_zone:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:used_limits_for_admin", + "description": "compute_extension:used_limits_for_admin action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:migrations:index", + "description": "compute_extension:migrations:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:create", + "description": "compute_extension:os-assisted-volume-snapshots:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-assisted-volume-snapshots:delete", + "description": "compute_extension:os-assisted-volume-snapshots:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:console_auth_tokens", + "description": "compute_extension:console_auth_tokens action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "compute_extension:os-server-external-events:create", + "description": "compute_extension:os-server-external-events:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_all", + "description": "network:get_all action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get", + "description": "network:get action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:create", + "description": "network:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:delete", + "description": "network:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:associate", + "description": "network:associate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:disassociate", + "description": "network:disassociate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_vifs_by_instance", + "description": "network:get_vifs_by_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:allocate_for_instance", + "description": "network:allocate_for_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:deallocate_for_instance", + "description": "network:deallocate_for_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:validate_networks", + "description": "network:validate_networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_instance_uuids_by_ip_filter", + "description": "network:get_instance_uuids_by_ip_filter action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_instance_id_by_floating_address", + "description": "network:get_instance_id_by_floating_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:setup_networks_on_host", + "description": "network:setup_networks_on_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_backdoor_port", + "description": "network:get_backdoor_port action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ip", + "description": "network:get_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ip_pools", + "description": "network:get_floating_ip_pools action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ip_by_address", + "description": "network:get_floating_ip_by_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ips_by_project", + "description": "network:get_floating_ips_by_project action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_floating_ips_by_fixed_address", + "description": "network:get_floating_ips_by_fixed_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:allocate_floating_ip", + "description": "network:allocate_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:associate_floating_ip", + "description": "network:associate_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:disassociate_floating_ip", + "description": "network:disassociate_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:release_floating_ip", + "description": "network:release_floating_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:migrate_instance_start", + "description": "network:migrate_instance_start action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:migrate_instance_finish", + "description": "network:migrate_instance_finish action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_fixed_ip", + "description": "network:get_fixed_ip action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_fixed_ip_by_address", + "description": "network:get_fixed_ip_by_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:add_fixed_ip_to_instance", + "description": "network:add_fixed_ip_to_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:remove_fixed_ip_from_instance", + "description": "network:remove_fixed_ip_from_instance action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:add_network_to_project", + "description": "network:add_network_to_project action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_instance_nw_info", + "description": "network:get_instance_nw_info action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_dns_domains", + "description": "network:get_dns_domains action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:add_dns_entry", + "description": "network:add_dns_entry action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:modify_dns_entry", + "description": "network:modify_dns_entry action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:delete_dns_entry", + "description": "network:delete_dns_entry action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_dns_entries_by_address", + "description": "network:get_dns_entries_by_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_dns_entries_by_name", + "description": "network:get_dns_entries_by_name action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:create_private_dns_domain", + "description": "network:create_private_dns_domain action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:create_public_dns_domain", + "description": "network:create_public_dns_domain action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:delete_dns_domain", + "description": "network:delete_dns_domain action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:attach_external_network", + "description": "network:attach_external_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "network:get_vif_by_mac_address", + "description": "network:get_vif_by_mac_address action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:detail:get_all_tenants", + "description": "os_compute_api:servers:detail:get_all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:index:get_all_tenants", + "description": "os_compute_api:servers:index:get_all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:confirm_resize", + "description": "os_compute_api:servers:confirm_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create", + "description": "os_compute_api:servers:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create:attach_network", + "description": "os_compute_api:servers:create:attach_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create:attach_volume", + "description": "os_compute_api:servers:create:attach_volume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create:forced_host", + "description": "os_compute_api:servers:create:forced_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:delete", + "description": "os_compute_api:servers:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:update", + "description": "os_compute_api:servers:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:detail", + "description": "os_compute_api:servers:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:index", + "description": "os_compute_api:servers:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:reboot", + "description": "os_compute_api:servers:reboot action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:rebuild", + "description": "os_compute_api:servers:rebuild action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:resize", + "description": "os_compute_api:servers:resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:revert_resize", + "description": "os_compute_api:servers:revert_resize action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:show", + "description": "os_compute_api:servers:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create_image", + "description": "os_compute_api:servers:create_image action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:create_image:allow_volume_backed", + "description": "os_compute_api:servers:create_image:allow_volume_backed action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:start", + "description": "os_compute_api:servers:start action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:stop", + "description": "os_compute_api:servers:stop action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-access-ips:discoverable", + "description": "os_compute_api:os-access-ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-access-ips", + "description": "os_compute_api:os-access-ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions", + "description": "os_compute_api:os-admin-actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:discoverable", + "description": "os_compute_api:os-admin-actions:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:reset_network", + "description": "os_compute_api:os-admin-actions:reset_network action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:inject_network_info", + "description": "os_compute_api:os-admin-actions:inject_network_info action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-actions:reset_state", + "description": "os_compute_api:os-admin-actions:reset_state action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-password", + "description": "os_compute_api:os-admin-password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-admin-password:discoverable", + "description": "os_compute_api:os-admin-password:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:discoverable", + "description": "os_compute_api:os-aggregates:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:index", + "description": "os_compute_api:os-aggregates:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:create", + "description": "os_compute_api:os-aggregates:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:show", + "description": "os_compute_api:os-aggregates:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:update", + "description": "os_compute_api:os-aggregates:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:delete", + "description": "os_compute_api:os-aggregates:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:add_host", + "description": "os_compute_api:os-aggregates:add_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:remove_host", + "description": "os_compute_api:os-aggregates:remove_host action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-aggregates:set_metadata", + "description": "os_compute_api:os-aggregates:set_metadata action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-agents", + "description": "os_compute_api:os-agents action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-agents:discoverable", + "description": "os_compute_api:os-agents:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-attach-interfaces", + "description": "os_compute_api:os-attach-interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-attach-interfaces:discoverable", + "description": "os_compute_api:os-attach-interfaces:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-baremetal-nodes", + "description": "os_compute_api:os-baremetal-nodes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-baremetal-nodes:discoverable", + "description": "os_compute_api:os-baremetal-nodes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable", + "description": "os_compute_api:os-block-device-mapping-v1:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells", + "description": "os_compute_api:os-cells action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:create", + "description": "os_compute_api:os-cells:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:delete", + "description": "os_compute_api:os-cells:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:update", + "description": "os_compute_api:os-cells:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:sync_instances", + "description": "os_compute_api:os-cells:sync_instances action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cells:discoverable", + "description": "os_compute_api:os-cells:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-certificates:create", + "description": "os_compute_api:os-certificates:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-certificates:show", + "description": "os_compute_api:os-certificates:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-certificates:discoverable", + "description": "os_compute_api:os-certificates:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cloudpipe", + "description": "os_compute_api:os-cloudpipe action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-cloudpipe:discoverable", + "description": "os_compute_api:os-cloudpipe:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-config-drive", + "description": "os_compute_api:os-config-drive action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:discoverable", + "description": "os_compute_api:os-consoles:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:create", + "description": "os_compute_api:os-consoles:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:delete", + "description": "os_compute_api:os-consoles:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:index", + "description": "os_compute_api:os-consoles:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-consoles:show", + "description": "os_compute_api:os-consoles:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-console-output:discoverable", + "description": "os_compute_api:os-console-output:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-console-output", + "description": "os_compute_api:os-console-output action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-remote-consoles", + "description": "os_compute_api:os-remote-consoles action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-remote-consoles:discoverable", + "description": "os_compute_api:os-remote-consoles:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-create-backup:discoverable", + "description": "os_compute_api:os-create-backup:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-create-backup", + "description": "os_compute_api:os-create-backup action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-deferred-delete", + "description": "os_compute_api:os-deferred-delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-deferred-delete:discoverable", + "description": "os_compute_api:os-deferred-delete:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-disk-config", + "description": "os_compute_api:os-disk-config action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-disk-config:discoverable", + "description": "os_compute_api:os-disk-config:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-evacuate", + "description": "os_compute_api:os-evacuate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-evacuate:discoverable", + "description": "os_compute_api:os-evacuate:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-server-attributes", + "description": "os_compute_api:os-extended-server-attributes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-server-attributes:discoverable", + "description": "os_compute_api:os-extended-server-attributes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-status", + "description": "os_compute_api:os-extended-status action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-status:discoverable", + "description": "os_compute_api:os-extended-status:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-availability-zone", + "description": "os_compute_api:os-extended-availability-zone action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-availability-zone:discoverable", + "description": "os_compute_api:os-extended-availability-zone:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:extensions", + "description": "os_compute_api:extensions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:extension_info:discoverable", + "description": "os_compute_api:extension_info:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-volumes", + "description": "os_compute_api:os-extended-volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-extended-volumes:discoverable", + "description": "os_compute_api:os-extended-volumes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fixed-ips", + "description": "os_compute_api:os-fixed-ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fixed-ips:discoverable", + "description": "os_compute_api:os-fixed-ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access", + "description": "os_compute_api:os-flavor-access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access:discoverable", + "description": "os_compute_api:os-flavor-access:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access", + "description": "os_compute_api:os-flavor-access:remove_tenant_access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-access:add_tenant_access", + "description": "os_compute_api:os-flavor-access:add_tenant_access action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-rxtx", + "description": "os_compute_api:os-flavor-rxtx action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-rxtx:discoverable", + "description": "os_compute_api:os-flavor-rxtx:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:flavors:discoverable", + "description": "os_compute_api:flavors:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable", + "description": "os_compute_api:os-flavor-extra-specs:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:index", + "description": "os_compute_api:os-flavor-extra-specs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:show", + "description": "os_compute_api:os-flavor-extra-specs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:create", + "description": "os_compute_api:os-flavor-extra-specs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:update", + "description": "os_compute_api:os-flavor-extra-specs:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-extra-specs:delete", + "description": "os_compute_api:os-flavor-extra-specs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-manage:discoverable", + "description": "os_compute_api:os-flavor-manage:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-flavor-manage", + "description": "os_compute_api:os-flavor-manage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns", + "description": "os_compute_api:os-floating-ip-dns action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns:discoverable", + "description": "os_compute_api:os-floating-ip-dns:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:update", + "description": "os_compute_api:os-floating-ip-dns:domain:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete", + "description": "os_compute_api:os-floating-ip-dns:domain:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-pools", + "description": "os_compute_api:os-floating-ip-pools action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ip-pools:discoverable", + "description": "os_compute_api:os-floating-ip-pools:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips", + "description": "os_compute_api:os-floating-ips action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips:discoverable", + "description": "os_compute_api:os-floating-ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips-bulk", + "description": "os_compute_api:os-floating-ips-bulk action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable", + "description": "os_compute_api:os-floating-ips-bulk:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fping", + "description": "os_compute_api:os-fping action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fping:discoverable", + "description": "os_compute_api:os-fping:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-fping:all_tenants", + "description": "os_compute_api:os-fping:all_tenants action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hide-server-addresses", + "description": "os_compute_api:os-hide-server-addresses action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hide-server-addresses:discoverable", + "description": "os_compute_api:os-hide-server-addresses:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hosts", + "description": "os_compute_api:os-hosts action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hosts:discoverable", + "description": "os_compute_api:os-hosts:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hypervisors", + "description": "os_compute_api:os-hypervisors action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-hypervisors:discoverable", + "description": "os_compute_api:os-hypervisors:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:images:discoverable", + "description": "os_compute_api:images:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:image-size", + "description": "os_compute_api:image-size action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:image-size:discoverable", + "description": "os_compute_api:image-size:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-actions", + "description": "os_compute_api:os-instance-actions action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-actions:discoverable", + "description": "os_compute_api:os-instance-actions:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-actions:events", + "description": "os_compute_api:os-instance-actions:events action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-usage-audit-log", + "description": "os_compute_api:os-instance-usage-audit-log action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable", + "description": "os_compute_api:os-instance-usage-audit-log:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:ips:discoverable", + "description": "os_compute_api:ips:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:ips:index", + "description": "os_compute_api:ips:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:ips:show", + "description": "os_compute_api:ips:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:discoverable", + "description": "os_compute_api:os-keypairs:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs", + "description": "os_compute_api:os-keypairs action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:index", + "description": "os_compute_api:os-keypairs:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:show", + "description": "os_compute_api:os-keypairs:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:create", + "description": "os_compute_api:os-keypairs:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-keypairs:delete", + "description": "os_compute_api:os-keypairs:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:limits:discoverable", + "description": "os_compute_api:limits:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:limits", + "description": "os_compute_api:limits action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:discoverable", + "description": "os_compute_api:os-lock-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:lock", + "description": "os_compute_api:os-lock-server:lock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:unlock", + "description": "os_compute_api:os-lock-server:unlock action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override", + "description": "os_compute_api:os-lock-server:unlock:unlock_override action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrate-server:discoverable", + "description": "os_compute_api:os-migrate-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrate-server:migrate", + "description": "os_compute_api:os-migrate-server:migrate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrate-server:migrate_live", + "description": "os_compute_api:os-migrate-server:migrate_live action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-multinic", + "description": "os_compute_api:os-multinic action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-multinic:discoverable", + "description": "os_compute_api:os-multinic:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks", + "description": "os_compute_api:os-networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks:view", + "description": "os_compute_api:os-networks:view action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks:discoverable", + "description": "os_compute_api:os-networks:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks-associate", + "description": "os_compute_api:os-networks-associate action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-networks-associate:discoverable", + "description": "os_compute_api:os-networks-associate:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pause-server:discoverable", + "description": "os_compute_api:os-pause-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pause-server:pause", + "description": "os_compute_api:os-pause-server:pause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pause-server:unpause", + "description": "os_compute_api:os-pause-server:unpause action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:pci_servers", + "description": "os_compute_api:os-pci:pci_servers action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:discoverable", + "description": "os_compute_api:os-pci:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:index", + "description": "os_compute_api:os-pci:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:detail", + "description": "os_compute_api:os-pci:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-pci:show", + "description": "os_compute_api:os-pci:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-personality:discoverable", + "description": "os_compute_api:os-personality:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable", + "description": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:discoverable", + "description": "os_compute_api:os-quota-sets:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:show", + "description": "os_compute_api:os-quota-sets:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:defaults", + "description": "os_compute_api:os-quota-sets:defaults action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:update", + "description": "os_compute_api:os-quota-sets:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:delete", + "description": "os_compute_api:os-quota-sets:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-sets:detail", + "description": "os_compute_api:os-quota-sets:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-class-sets:update", + "description": "os_compute_api:os-quota-class-sets:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-class-sets:show", + "description": "os_compute_api:os-quota-class-sets:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-quota-class-sets:discoverable", + "description": "os_compute_api:os-quota-class-sets:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-rescue", + "description": "os_compute_api:os-rescue action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-rescue:discoverable", + "description": "os_compute_api:os-rescue:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-scheduler-hints:discoverable", + "description": "os_compute_api:os-scheduler-hints:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-group-default-rules:discoverable", + "description": "os_compute_api:os-security-group-default-rules:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-group-default-rules", + "description": "os_compute_api:os-security-group-default-rules action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-groups", + "description": "os_compute_api:os-security-groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-security-groups:discoverable", + "description": "os_compute_api:os-security-groups:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-diagnostics", + "description": "os_compute_api:os-server-diagnostics action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-diagnostics:discoverable", + "description": "os_compute_api:os-server-diagnostics:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-password", + "description": "os_compute_api:os-server-password action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-password:discoverable", + "description": "os_compute_api:os-server-password:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-usage", + "description": "os_compute_api:os-server-usage action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-usage:discoverable", + "description": "os_compute_api:os-server-usage:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-groups", + "description": "os_compute_api:os-server-groups action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-groups:discoverable", + "description": "os_compute_api:os-server-groups:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-services", + "description": "os_compute_api:os-services action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-services:discoverable", + "description": "os_compute_api:os-services:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:discoverable", + "description": "os_compute_api:server-metadata:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:index", + "description": "os_compute_api:server-metadata:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:show", + "description": "os_compute_api:server-metadata:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:delete", + "description": "os_compute_api:server-metadata:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:create", + "description": "os_compute_api:server-metadata:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:update", + "description": "os_compute_api:server-metadata:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:server-metadata:update_all", + "description": "os_compute_api:server-metadata:update_all action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:servers:discoverable", + "description": "os_compute_api:servers:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:shelve", + "description": "os_compute_api:os-shelve:shelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:shelve:discoverable", + "description": "os_compute_api:os-shelve:shelve:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:shelve_offload", + "description": "os_compute_api:os-shelve:shelve_offload action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable", + "description": "os_compute_api:os-simple-tenant-usage:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-simple-tenant-usage:show", + "description": "os_compute_api:os-simple-tenant-usage:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-simple-tenant-usage:list", + "description": "os_compute_api:os-simple-tenant-usage:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-suspend-server:discoverable", + "description": "os_compute_api:os-suspend-server:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-suspend-server:suspend", + "description": "os_compute_api:os-suspend-server:suspend action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-suspend-server:resume", + "description": "os_compute_api:os-suspend-server:resume action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-tenant-networks", + "description": "os_compute_api:os-tenant-networks action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-tenant-networks:discoverable", + "description": "os_compute_api:os-tenant-networks:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-shelve:unshelve", + "description": "os_compute_api:os-shelve:unshelve action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-user-data:discoverable", + "description": "os_compute_api:os-user-data:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-virtual-interfaces", + "description": "os_compute_api:os-virtual-interfaces action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-virtual-interfaces:discoverable", + "description": "os_compute_api:os-virtual-interfaces:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes", + "description": "os_compute_api:os-volumes action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes:discoverable", + "description": "os_compute_api:os-volumes:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:index", + "description": "os_compute_api:os-volumes-attachments:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:show", + "description": "os_compute_api:os-volumes-attachments:show action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:create", + "description": "os_compute_api:os-volumes-attachments:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:update", + "description": "os_compute_api:os-volumes-attachments:update action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:delete", + "description": "os_compute_api:os-volumes-attachments:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-volumes-attachments:discoverable", + "description": "os_compute_api:os-volumes-attachments:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-availability-zone:list", + "description": "os_compute_api:os-availability-zone:list action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-availability-zone:discoverable", + "description": "os_compute_api:os-availability-zone:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-availability-zone:detail", + "description": "os_compute_api:os-availability-zone:detail action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-used-limits", + "description": "os_compute_api:os-used-limits action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-used-limits:discoverable", + "description": "os_compute_api:os-used-limits:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrations:index", + "description": "os_compute_api:os-migrations:index action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-migrations:discoverable", + "description": "os_compute_api:os-migrations:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:create", + "description": "os_compute_api:os-assisted-volume-snapshots:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete", + "description": "os_compute_api:os-assisted-volume-snapshots:delete action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable", + "description": "os_compute_api:os-assisted-volume-snapshots:discoverable action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-console-auth-tokens", + "description": "os_compute_api:os-console-auth-tokens action for nova", + "policies": [], + "category": { + "name": "action_id" + } + }, + { + "name": "os_compute_api:os-server-external-events:create", + "description": "os_compute_api:os-server-external-events:create action for nova", + "policies": [], + "category": { + "name": "action_id" + } + } + ], + "action_assignments": [ + { + "action": { + "name": "cells_scheduler_filter:TargetCellFilter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "cells_scheduler_filter:TargetCellFilter" + } + ] + }, + { + "action": { + "name": "compute:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create" + } + ] + }, + { + "action": { + "name": "compute:create:attach_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create:attach_network" + } + ] + }, + { + "action": { + "name": "compute:create:attach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create:attach_volume" + } + ] + }, + { + "action": { + "name": "compute:create:forced_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:create:forced_host" + } + ] + }, + { + "action": { + "name": "compute:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get" + } + ] + }, + { + "action": { + "name": "compute:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all" + } + ] + }, + { + "action": { + "name": "compute:get_all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all_tenants" + } + ] + }, + { + "action": { + "name": "compute:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:update" + } + ] + }, + { + "action": { + "name": "compute:get_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:get_all_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:get_all_instance_system_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_all_instance_system_metadata" + } + ] + }, + { + "action": { + "name": "compute:update_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:update_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:delete_instance_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:delete_instance_metadata" + } + ] + }, + { + "action": { + "name": "compute:get_instance_faults" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_instance_faults" + } + ] + }, + { + "action": { + "name": "compute:get_diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_diagnostics" + } + ] + }, + { + "action": { + "name": "compute:get_instance_diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_instance_diagnostics" + } + ] + }, + { + "action": { + "name": "compute:start" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:start" + } + ] + }, + { + "action": { + "name": "compute:stop" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:stop" + } + ] + }, + { + "action": { + "name": "compute:get_lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_lock" + } + ] + }, + { + "action": { + "name": "compute:lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:lock" + } + ] + }, + { + "action": { + "name": "compute:unlock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unlock" + } + ] + }, + { + "action": { + "name": "compute:unlock_override" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unlock_override" + } + ] + }, + { + "action": { + "name": "compute:get_vnc_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_vnc_console" + } + ] + }, + { + "action": { + "name": "compute:get_spice_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_spice_console" + } + ] + }, + { + "action": { + "name": "compute:get_rdp_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_rdp_console" + } + ] + }, + { + "action": { + "name": "compute:get_serial_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_serial_console" + } + ] + }, + { + "action": { + "name": "compute:get_mks_console" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_mks_console" + } + ] + }, + { + "action": { + "name": "compute:get_console_output" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:get_console_output" + } + ] + }, + { + "action": { + "name": "compute:reset_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:reset_network" + } + ] + }, + { + "action": { + "name": "compute:inject_network_info" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:inject_network_info" + } + ] + }, + { + "action": { + "name": "compute:add_fixed_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:add_fixed_ip" + } + ] + }, + { + "action": { + "name": "compute:remove_fixed_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:remove_fixed_ip" + } + ] + }, + { + "action": { + "name": "compute:attach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:attach_volume" + } + ] + }, + { + "action": { + "name": "compute:detach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:detach_volume" + } + ] + }, + { + "action": { + "name": "compute:swap_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:swap_volume" + } + ] + }, + { + "action": { + "name": "compute:attach_interface" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:attach_interface" + } + ] + }, + { + "action": { + "name": "compute:detach_interface" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:detach_interface" + } + ] + }, + { + "action": { + "name": "compute:set_admin_password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:set_admin_password" + } + ] + }, + { + "action": { + "name": "compute:rescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:rescue" + } + ] + }, + { + "action": { + "name": "compute:unrescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unrescue" + } + ] + }, + { + "action": { + "name": "compute:suspend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:suspend" + } + ] + }, + { + "action": { + "name": "compute:resume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:resume" + } + ] + }, + { + "action": { + "name": "compute:pause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:pause" + } + ] + }, + { + "action": { + "name": "compute:unpause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unpause" + } + ] + }, + { + "action": { + "name": "compute:shelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:shelve" + } + ] + }, + { + "action": { + "name": "compute:shelve_offload" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:shelve_offload" + } + ] + }, + { + "action": { + "name": "compute:unshelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:unshelve" + } + ] + }, + { + "action": { + "name": "compute:snapshot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:snapshot" + } + ] + }, + { + "action": { + "name": "compute:snapshot_volume_backed" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:snapshot_volume_backed" + } + ] + }, + { + "action": { + "name": "compute:backup" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:backup" + } + ] + }, + { + "action": { + "name": "compute:resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:resize" + } + ] + }, + { + "action": { + "name": "compute:confirm_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:confirm_resize" + } + ] + }, + { + "action": { + "name": "compute:revert_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:revert_resize" + } + ] + }, + { + "action": { + "name": "compute:rebuild" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:rebuild" + } + ] + }, + { + "action": { + "name": "compute:reboot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:reboot" + } + ] + }, + { + "action": { + "name": "compute:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:delete" + } + ] + }, + { + "action": { + "name": "compute:soft_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:soft_delete" + } + ] + }, + { + "action": { + "name": "compute:force_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:force_delete" + } + ] + }, + { + "action": { + "name": "compute:security_groups:add_to_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:security_groups:add_to_instance" + } + ] + }, + { + "action": { + "name": "compute:security_groups:remove_from_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:security_groups:remove_from_instance" + } + ] + }, + { + "action": { + "name": "compute:restore" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:restore" + } + ] + }, + { + "action": { + "name": "compute:volume_snapshot_create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:volume_snapshot_create" + } + ] + }, + { + "action": { + "name": "compute:volume_snapshot_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute:volume_snapshot_delete" + } + ] + }, + { + "action": { + "name": "compute_extension:accounts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:accounts" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:pause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:pause" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:unpause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:unpause" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:suspend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:suspend" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:resume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:resume" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:lock" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:unlock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:unlock" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:resetNetwork" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:resetNetwork" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:injectNetworkInfo" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:injectNetworkInfo" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:createBackup" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:createBackup" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:migrateLive" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:migrateLive" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:resetState" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:resetState" + } + ] + }, + { + "action": { + "name": "compute_extension:admin_actions:migrate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:admin_actions:migrate" + } + ] + }, + { + "action": { + "name": "compute_extension:aggregates" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:aggregates" + } + ] + }, + { + "action": { + "name": "compute_extension:agents" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:agents" + } + ] + }, + { + "action": { + "name": "compute_extension:attach_interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:attach_interfaces" + } + ] + }, + { + "action": { + "name": "compute_extension:baremetal_nodes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:baremetal_nodes" + } + ] + }, + { + "action": { + "name": "compute_extension:cells" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:create" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:update" + } + ] + }, + { + "action": { + "name": "compute_extension:cells:sync_instances" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cells:sync_instances" + } + ] + }, + { + "action": { + "name": "compute_extension:certificates" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:certificates" + } + ] + }, + { + "action": { + "name": "compute_extension:cloudpipe" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cloudpipe" + } + ] + }, + { + "action": { + "name": "compute_extension:cloudpipe_update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:cloudpipe_update" + } + ] + }, + { + "action": { + "name": "compute_extension:config_drive" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:config_drive" + } + ] + }, + { + "action": { + "name": "compute_extension:console_output" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:console_output" + } + ] + }, + { + "action": { + "name": "compute_extension:consoles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:consoles" + } + ] + }, + { + "action": { + "name": "compute_extension:createserverext" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:createserverext" + } + ] + }, + { + "action": { + "name": "compute_extension:deferred_delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:deferred_delete" + } + ] + }, + { + "action": { + "name": "compute_extension:disk_config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:disk_config" + } + ] + }, + { + "action": { + "name": "compute_extension:evacuate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:evacuate" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_server_attributes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_server_attributes" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_status" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_availability_zone" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_availability_zone" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_ips" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_ips_mac" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_ips_mac" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_vif_net" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_vif_net" + } + ] + }, + { + "action": { + "name": "compute_extension:extended_volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:extended_volumes" + } + ] + }, + { + "action": { + "name": "compute_extension:fixed_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:fixed_ips" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_access" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_access:addTenantAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_access:addTenantAccess" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_access:removeTenantAccess" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_access:removeTenantAccess" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_disabled" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_disabled" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_rxtx" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_rxtx" + } + ] + }, + { + "action": { + "name": "compute_extension:flavor_swap" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavor_swap" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextradata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextradata" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:index" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:show" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:create" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:update" + } + ] + }, + { + "action": { + "name": "compute_extension:flavorextraspecs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavorextraspecs:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:flavormanage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:flavormanage" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ip_dns" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ip_dns" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ip_pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ip_pools" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ips" + } + ] + }, + { + "action": { + "name": "compute_extension:floating_ips_bulk" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:floating_ips_bulk" + } + ] + }, + { + "action": { + "name": "compute_extension:fping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:fping" + } + ] + }, + { + "action": { + "name": "compute_extension:fping:all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:fping:all_tenants" + } + ] + }, + { + "action": { + "name": "compute_extension:hide_server_addresses" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:hide_server_addresses" + } + ] + }, + { + "action": { + "name": "compute_extension:hosts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:hosts" + } + ] + }, + { + "action": { + "name": "compute_extension:hypervisors" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:hypervisors" + } + ] + }, + { + "action": { + "name": "compute_extension:image_size" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:image_size" + } + ] + }, + { + "action": { + "name": "compute_extension:instance_actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:instance_actions" + } + ] + }, + { + "action": { + "name": "compute_extension:instance_actions:events" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:instance_actions:events" + } + ] + }, + { + "action": { + "name": "compute_extension:instance_usage_audit_log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:instance_usage_audit_log" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:index" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:show" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:create" + } + ] + }, + { + "action": { + "name": "compute_extension:keypairs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:keypairs:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:multinic" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:multinic" + } + ] + }, + { + "action": { + "name": "compute_extension:networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:networks" + } + ] + }, + { + "action": { + "name": "compute_extension:networks:view" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:networks:view" + } + ] + }, + { + "action": { + "name": "compute_extension:networks_associate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:networks_associate" + } + ] + }, + { + "action": { + "name": "compute_extension:os-tenant-networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-tenant-networks" + } + ] + }, + { + "action": { + "name": "compute_extension:quotas:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quotas:show" + } + ] + }, + { + "action": { + "name": "compute_extension:quotas:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quotas:update" + } + ] + }, + { + "action": { + "name": "compute_extension:quotas:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quotas:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:quota_classes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:quota_classes" + } + ] + }, + { + "action": { + "name": "compute_extension:rescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:rescue" + } + ] + }, + { + "action": { + "name": "compute_extension:security_group_default_rules" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:security_group_default_rules" + } + ] + }, + { + "action": { + "name": "compute_extension:security_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:security_groups" + } + ] + }, + { + "action": { + "name": "compute_extension:server_diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_diagnostics" + } + ] + }, + { + "action": { + "name": "compute_extension:server_groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_groups" + } + ] + }, + { + "action": { + "name": "compute_extension:server_password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_password" + } + ] + }, + { + "action": { + "name": "compute_extension:server_usage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:server_usage" + } + ] + }, + { + "action": { + "name": "compute_extension:services" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:services" + } + ] + }, + { + "action": { + "name": "compute_extension:shelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:shelve" + } + ] + }, + { + "action": { + "name": "compute_extension:shelveOffload" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:shelveOffload" + } + ] + }, + { + "action": { + "name": "compute_extension:simple_tenant_usage:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:simple_tenant_usage:show" + } + ] + }, + { + "action": { + "name": "compute_extension:simple_tenant_usage:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:simple_tenant_usage:list" + } + ] + }, + { + "action": { + "name": "compute_extension:unshelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:unshelve" + } + ] + }, + { + "action": { + "name": "compute_extension:users" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:users" + } + ] + }, + { + "action": { + "name": "compute_extension:virtual_interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:virtual_interfaces" + } + ] + }, + { + "action": { + "name": "compute_extension:virtual_storage_arrays" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:virtual_storage_arrays" + } + ] + }, + { + "action": { + "name": "compute_extension:volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volumes" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:index" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:show" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:create" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:update" + } + ] + }, + { + "action": { + "name": "compute_extension:volume_attachments:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volume_attachments:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:volumetypes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:volumetypes" + } + ] + }, + { + "action": { + "name": "compute_extension:availability_zone:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:availability_zone:list" + } + ] + }, + { + "action": { + "name": "compute_extension:availability_zone:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:availability_zone:detail" + } + ] + }, + { + "action": { + "name": "compute_extension:used_limits_for_admin" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:used_limits_for_admin" + } + ] + }, + { + "action": { + "name": "compute_extension:migrations:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:migrations:index" + } + ] + }, + { + "action": { + "name": "compute_extension:os-assisted-volume-snapshots:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:create" + } + ] + }, + { + "action": { + "name": "compute_extension:os-assisted-volume-snapshots:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:delete" + } + ] + }, + { + "action": { + "name": "compute_extension:console_auth_tokens" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:console_auth_tokens" + } + ] + }, + { + "action": { + "name": "compute_extension:os-server-external-events:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "compute_extension:os-server-external-events:create" + } + ] + }, + { + "action": { + "name": "network:get_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_all" + } + ] + }, + { + "action": { + "name": "network:get" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get" + } + ] + }, + { + "action": { + "name": "network:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:create" + } + ] + }, + { + "action": { + "name": "network:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:delete" + } + ] + }, + { + "action": { + "name": "network:associate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:associate" + } + ] + }, + { + "action": { + "name": "network:disassociate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:disassociate" + } + ] + }, + { + "action": { + "name": "network:get_vifs_by_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_vifs_by_instance" + } + ] + }, + { + "action": { + "name": "network:allocate_for_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:allocate_for_instance" + } + ] + }, + { + "action": { + "name": "network:deallocate_for_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:deallocate_for_instance" + } + ] + }, + { + "action": { + "name": "network:validate_networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:validate_networks" + } + ] + }, + { + "action": { + "name": "network:get_instance_uuids_by_ip_filter" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_instance_uuids_by_ip_filter" + } + ] + }, + { + "action": { + "name": "network:get_instance_id_by_floating_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_instance_id_by_floating_address" + } + ] + }, + { + "action": { + "name": "network:setup_networks_on_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:setup_networks_on_host" + } + ] + }, + { + "action": { + "name": "network:get_backdoor_port" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_backdoor_port" + } + ] + }, + { + "action": { + "name": "network:get_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ip" + } + ] + }, + { + "action": { + "name": "network:get_floating_ip_pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ip_pools" + } + ] + }, + { + "action": { + "name": "network:get_floating_ip_by_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ip_by_address" + } + ] + }, + { + "action": { + "name": "network:get_floating_ips_by_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ips_by_project" + } + ] + }, + { + "action": { + "name": "network:get_floating_ips_by_fixed_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_floating_ips_by_fixed_address" + } + ] + }, + { + "action": { + "name": "network:allocate_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:allocate_floating_ip" + } + ] + }, + { + "action": { + "name": "network:associate_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:associate_floating_ip" + } + ] + }, + { + "action": { + "name": "network:disassociate_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:disassociate_floating_ip" + } + ] + }, + { + "action": { + "name": "network:release_floating_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:release_floating_ip" + } + ] + }, + { + "action": { + "name": "network:migrate_instance_start" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:migrate_instance_start" + } + ] + }, + { + "action": { + "name": "network:migrate_instance_finish" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:migrate_instance_finish" + } + ] + }, + { + "action": { + "name": "network:get_fixed_ip" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_fixed_ip" + } + ] + }, + { + "action": { + "name": "network:get_fixed_ip_by_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_fixed_ip_by_address" + } + ] + }, + { + "action": { + "name": "network:add_fixed_ip_to_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:add_fixed_ip_to_instance" + } + ] + }, + { + "action": { + "name": "network:remove_fixed_ip_from_instance" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:remove_fixed_ip_from_instance" + } + ] + }, + { + "action": { + "name": "network:add_network_to_project" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:add_network_to_project" + } + ] + }, + { + "action": { + "name": "network:get_instance_nw_info" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_instance_nw_info" + } + ] + }, + { + "action": { + "name": "network:get_dns_domains" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_dns_domains" + } + ] + }, + { + "action": { + "name": "network:add_dns_entry" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:add_dns_entry" + } + ] + }, + { + "action": { + "name": "network:modify_dns_entry" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:modify_dns_entry" + } + ] + }, + { + "action": { + "name": "network:delete_dns_entry" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:delete_dns_entry" + } + ] + }, + { + "action": { + "name": "network:get_dns_entries_by_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_dns_entries_by_address" + } + ] + }, + { + "action": { + "name": "network:get_dns_entries_by_name" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_dns_entries_by_name" + } + ] + }, + { + "action": { + "name": "network:create_private_dns_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:create_private_dns_domain" + } + ] + }, + { + "action": { + "name": "network:create_public_dns_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:create_public_dns_domain" + } + ] + }, + { + "action": { + "name": "network:delete_dns_domain" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:delete_dns_domain" + } + ] + }, + { + "action": { + "name": "network:attach_external_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:attach_external_network" + } + ] + }, + { + "action": { + "name": "network:get_vif_by_mac_address" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "network:get_vif_by_mac_address" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:detail:get_all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:detail:get_all_tenants" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:index:get_all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:index:get_all_tenants" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:confirm_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:confirm_resize" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create:attach_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create:attach_network" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create:attach_volume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create:attach_volume" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create:forced_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create:forced_host" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:reboot" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:reboot" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:rebuild" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:rebuild" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:resize" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:revert_resize" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:revert_resize" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create_image" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create_image" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:create_image:allow_volume_backed" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:create_image:allow_volume_backed" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:start" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:start" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:stop" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:stop" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-access-ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-access-ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-access-ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-access-ips" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:reset_network" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:reset_network" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:inject_network_info" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:inject_network_info" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-actions:reset_state" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-actions:reset_state" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-password" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-admin-password:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-admin-password:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:add_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:add_host" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:remove_host" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:remove_host" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-aggregates:set_metadata" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-aggregates:set_metadata" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-agents" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-agents" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-agents:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-agents:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-attach-interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-attach-interfaces" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-attach-interfaces:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-attach-interfaces:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-baremetal-nodes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-baremetal-nodes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-baremetal-nodes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-baremetal-nodes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:sync_instances" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:sync_instances" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cells:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cells:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-certificates:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-certificates:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-certificates:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-certificates:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-certificates:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-certificates:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cloudpipe" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cloudpipe" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-cloudpipe:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-cloudpipe:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-config-drive" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-config-drive" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-consoles:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-consoles:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-console-output:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-console-output:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-console-output" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-console-output" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-remote-consoles" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-remote-consoles" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-remote-consoles:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-remote-consoles:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-create-backup:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-create-backup:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-create-backup" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-create-backup" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-deferred-delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-deferred-delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-deferred-delete:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-deferred-delete:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-disk-config" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-disk-config" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-disk-config:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-disk-config:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-evacuate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-evacuate" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-evacuate:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-evacuate:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-server-attributes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-server-attributes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-server-attributes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-server-attributes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-status" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-status" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-status:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-status:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-availability-zone" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-availability-zone" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-availability-zone:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-availability-zone:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:extensions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:extensions" + } + ] + }, + { + "action": { + "name": "os_compute_api:extension_info:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:extension_info:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-volumes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-extended-volumes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-extended-volumes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fixed-ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fixed-ips" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fixed-ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fixed-ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access:remove_tenant_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-access:add_tenant_access" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-access:add_tenant_access" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-rxtx" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-rxtx" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-rxtx:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-rxtx:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:flavors:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:flavors:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-extra-specs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-extra-specs:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-manage:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-manage:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-flavor-manage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-flavor-manage" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns:domain:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-dns:domain:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-pools" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-pools" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ip-pools:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ip-pools:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips-bulk" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips-bulk" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-floating-ips-bulk:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fping" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fping" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fping:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fping:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-fping:all_tenants" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-fping:all_tenants" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hide-server-addresses" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hide-server-addresses" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hide-server-addresses:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hide-server-addresses:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hosts" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hosts" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hosts:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hosts:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hypervisors" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hypervisors" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-hypervisors:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-hypervisors:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:images:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:images:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:image-size" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:image-size" + } + ] + }, + { + "action": { + "name": "os_compute_api:image-size:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:image-size:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-actions" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-actions" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-actions:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-actions:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-actions:events" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-actions:events" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-usage-audit-log" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-usage-audit-log" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:ips:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:ips:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:ips:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:ips:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:ips:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:ips:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-keypairs:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-keypairs:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:limits:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:limits:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:limits" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:lock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:lock" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:unlock" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:unlock" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-lock-server:unlock:unlock_override" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrate-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrate-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrate-server:migrate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrate-server:migrate" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrate-server:migrate_live" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrate-server:migrate_live" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-multinic" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-multinic" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-multinic:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-multinic:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks:view" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks:view" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks-associate" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks-associate" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-networks-associate:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-networks-associate:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pause-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pause-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pause-server:pause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pause-server:pause" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pause-server:unpause" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pause-server:unpause" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:pci_servers" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:pci_servers" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-pci:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-pci:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-personality:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-personality:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:defaults" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:defaults" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-sets:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-sets:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-class-sets:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-class-sets:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-class-sets:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-class-sets:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-quota-class-sets:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-quota-class-sets:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-rescue" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-rescue" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-rescue:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-rescue:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-scheduler-hints:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-scheduler-hints:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-group-default-rules:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-group-default-rules:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-group-default-rules" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-group-default-rules" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-groups" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-security-groups:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-security-groups:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-diagnostics" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-diagnostics" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-diagnostics:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-diagnostics:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-password" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-password" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-password:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-password:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-usage" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-usage" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-usage:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-usage:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-groups" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-groups" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-groups:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-groups:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-services" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-services" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-services:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-services:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:server-metadata:update_all" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:server-metadata:update_all" + } + ] + }, + { + "action": { + "name": "os_compute_api:servers:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:servers:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:shelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:shelve" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:shelve:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:shelve:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:shelve_offload" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:shelve_offload" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-simple-tenant-usage:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-simple-tenant-usage:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-simple-tenant-usage:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-simple-tenant-usage:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-simple-tenant-usage:list" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-suspend-server:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-suspend-server:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-suspend-server:suspend" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-suspend-server:suspend" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-suspend-server:resume" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-suspend-server:resume" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-tenant-networks" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-tenant-networks" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-tenant-networks:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-tenant-networks:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-shelve:unshelve" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-shelve:unshelve" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-user-data:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-user-data:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-virtual-interfaces" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-virtual-interfaces" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-virtual-interfaces:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-virtual-interfaces:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:show" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:show" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:update" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:update" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-volumes-attachments:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-volumes-attachments:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-availability-zone:list" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-availability-zone:list" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-availability-zone:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-availability-zone:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-availability-zone:detail" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-availability-zone:detail" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-used-limits" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-used-limits" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-used-limits:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-used-limits:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrations:index" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrations:index" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-migrations:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-migrations:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-assisted-volume-snapshots:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:create" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-assisted-volume-snapshots:delete" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-console-auth-tokens" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-console-auth-tokens" + } + ] + }, + { + "action": { + "name": "os_compute_api:os-server-external-events:create" + }, + "category": { + "name": "action_id" + }, + "assignments": [ + { + "name": "os_compute_api:os-server-external-events:create" + } + ] + } + ], + "meta_rules": [ + { + "name": "rbac", + "description": "", + "subject_categories": [ + { + "name": "role" + } + ], + "object_categories": [ + { + "name": "id" + } + ], + "action_categories": [ + { + "name": "action_id" + } + ] + } + ], + "rules": [ + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "cells_scheduler_filter:TargetCellFilter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create:attach_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create:attach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:create:forced_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_all_instance_system_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:update_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:delete_instance_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_instance_faults" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_instance_diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:start" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:stop" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unlock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unlock_override" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_vnc_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_spice_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_rdp_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_serial_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_mks_console" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:get_console_output" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:reset_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:inject_network_info" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:add_fixed_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:remove_fixed_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:attach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:detach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:swap_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:attach_interface" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:detach_interface" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:set_admin_password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:rescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unrescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:suspend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:resume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:pause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unpause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:shelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:shelve_offload" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:unshelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:snapshot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:snapshot_volume_backed" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:backup" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:confirm_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:revert_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:rebuild" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:reboot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:soft_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:force_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:security_groups:add_to_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:security_groups:remove_from_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:restore" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:volume_snapshot_create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute:volume_snapshot_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:accounts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:pause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:unpause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:suspend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:resume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:unlock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:resetNetwork" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:injectNetworkInfo" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:createBackup" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:migrateLive" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:resetState" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:admin_actions:migrate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:aggregates" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:agents" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:attach_interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:baremetal_nodes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cells:sync_instances" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:certificates" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cloudpipe" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:cloudpipe_update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:config_drive" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:console_output" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:consoles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:createserverext" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:deferred_delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:disk_config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:evacuate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_server_attributes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_availability_zone" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_ips_mac" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_vif_net" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:extended_volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:fixed_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_access:addTenantAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_access:removeTenantAccess" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_disabled" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_rxtx" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavor_swap" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextradata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavorextraspecs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:flavormanage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ip_dns" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ip_pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:floating_ips_bulk" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:fping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:fping:all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:hide_server_addresses" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:hosts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:hypervisors" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:image_size" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:instance_actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:instance_actions:events" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:instance_usage_audit_log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:keypairs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:multinic" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:networks:view" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:networks_associate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-tenant-networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quotas:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quotas:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quotas:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:quota_classes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:rescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:security_group_default_rules" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:security_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:server_usage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:services" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:shelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:shelveOffload" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:simple_tenant_usage:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:simple_tenant_usage:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:unshelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:users" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:virtual_interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:virtual_storage_arrays" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volume_attachments:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:volumetypes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:availability_zone:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:availability_zone:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:used_limits_for_admin" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:migrations:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-assisted-volume-snapshots:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:console_auth_tokens" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "compute_extension:os-server-external-events:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:associate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:disassociate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_vifs_by_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:allocate_for_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:deallocate_for_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:validate_networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_instance_uuids_by_ip_filter" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_instance_id_by_floating_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:setup_networks_on_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_backdoor_port" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ip_pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ip_by_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ips_by_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_floating_ips_by_fixed_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:allocate_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:associate_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:disassociate_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:release_floating_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:migrate_instance_start" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:migrate_instance_finish" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_fixed_ip" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_fixed_ip_by_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:add_fixed_ip_to_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:remove_fixed_ip_from_instance" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:add_network_to_project" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_instance_nw_info" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_dns_domains" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:add_dns_entry" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:modify_dns_entry" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:delete_dns_entry" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_dns_entries_by_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_dns_entries_by_name" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:create_private_dns_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:create_public_dns_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:delete_dns_domain" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:attach_external_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "network:get_vif_by_mac_address" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:detail:get_all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:index:get_all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:confirm_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create:attach_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create:attach_volume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create:forced_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:reboot" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:rebuild" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:revert_resize" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create_image" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:create_image:allow_volume_backed" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:start" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:stop" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-access-ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-access-ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:reset_network" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:inject_network_info" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-actions:reset_state" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-admin-password:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:add_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:remove_host" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-aggregates:set_metadata" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-agents" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-agents:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-attach-interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-attach-interfaces:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-baremetal-nodes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-baremetal-nodes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-block-device-mapping-v1:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:sync_instances" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cells:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-certificates:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-certificates:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-certificates:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cloudpipe" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-cloudpipe:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-config-drive" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-consoles:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-console-output:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-console-output" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-remote-consoles" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-remote-consoles:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-create-backup:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-create-backup" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-deferred-delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-deferred-delete:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-disk-config" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-disk-config:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-evacuate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-evacuate:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-server-attributes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-server-attributes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-status" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-status:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-availability-zone" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-availability-zone:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:extensions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:extension_info:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-extended-volumes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fixed-ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fixed-ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access:remove_tenant_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-access:add_tenant_access" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-rxtx" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-rxtx:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:flavors:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-extra-specs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-manage:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-flavor-manage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-dns:domain:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-pools" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ip-pools:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips-bulk" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-floating-ips-bulk:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fping" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fping:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-fping:all_tenants" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hide-server-addresses" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hide-server-addresses:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hosts" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hosts:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hypervisors" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-hypervisors:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:images:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:image-size" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:image-size:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-actions" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-actions:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-actions:events" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-usage-audit-log" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-instance-usage-audit-log:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:ips:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:ips:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:ips:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-keypairs:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:limits:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:lock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:unlock" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-lock-server:unlock:unlock_override" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrate-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrate-server:migrate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrate-server:migrate_live" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-multinic" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-multinic:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks:view" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks-associate" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-networks-associate:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pause-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pause-server:pause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pause-server:unpause" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:pci_servers" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-pci:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-personality:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-preserve-ephemeral-rebuild:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:defaults" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-sets:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-class-sets:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-class-sets:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-quota-class-sets:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-rescue" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-rescue:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-scheduler-hints:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-group-default-rules:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-group-default-rules" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-security-groups:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-diagnostics" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-diagnostics:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-password" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-password:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-usage" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-usage:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-groups" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-groups:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-services" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-services:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:server-metadata:update_all" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:servers:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:shelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:shelve:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:shelve_offload" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-simple-tenant-usage:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-simple-tenant-usage:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-simple-tenant-usage:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-suspend-server:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-suspend-server:suspend" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-suspend-server:resume" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-tenant-networks" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-tenant-networks:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-shelve:unshelve" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-user-data:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-virtual-interfaces" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-virtual-interfaces:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:show" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:update" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-volumes-attachments:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-availability-zone:list" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-availability-zone:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-availability-zone:detail" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-used-limits" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-used-limits:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrations:index" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-migrations:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:delete" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-assisted-volume-snapshots:discoverable" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-console-auth-tokens" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + }, + { + "meta_rule": { + "name": "rbac" + }, + "rule": { + "subject_data": [ + { + "name": "admin" + } + ], + "object_data": [ + { + "name": "all_vm" + } + ], + "action_data": [ + { + "name": "os_compute_api:os-server-external-events:create" + } + ] + }, + "policy": { + "name": "OpenStack RBAC Policy" + }, + "instructions": [ + { + "decision": "grant" + } + ], + "enabled": true + } + ] +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/policy_attributes.json b/moon_engine/tests/func_policies/policy_attributes.json new file mode 100644 index 00000000..1b6aec83 --- /dev/null +++ b/moon_engine/tests/func_policies/policy_attributes.json @@ -0,0 +1,452 @@ +{ + "policies": [ + { + "name": "Attrs Policy", + "genre": "authz", + "description": "Attrs Policy with custom attributes", + "model": { + "name": "ATTRS" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "ATTRS", + "description": "", + "meta_rules": [ + { + "name": "attrs" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Attrs Policy" + } + ] + }, + { + "name": "demo", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Attrs Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "role of a user" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "user", + "description": "", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": {"name": "admin"}, + "category": {"name": "role"}, + "assignments": [{"name": "admin"}] + }, + { + "subject": {"name": "admin"}, + "category": {"name": "role"}, + "assignments": [{"name": "user"}] + }, + { + "subject": {"name": "demo"}, + "category": {"name": "role"}, + "assignments": [{"name": "user"}] + } + ], + "objects": [ + { + "name": "vm1", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Attrs Policy" + } + ] + }, + { + "name": "vm2", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Attrs Policy" + } + ] + }, + { + "name": "vm3", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Attrs Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "identification of the object" + } + ], + "object_data": [ + { + "name": "vm1", + "description": "", + "policies": [], + "category": { + "name": "id" + } + }, + { + "name": "vm2", + "description": "", + "policies": [], + "category": { + "name": "id" + } + }, + { + "name": "vm3", + "description": "", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": {"name": "vm1"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm1"}] + }, + { + "object": {"name": "vm2"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm2"}] + }, + { + "object": {"name": "vm3"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm3"}] + } + ], + "actions": [ + { + "name": "use_image", + "description": "use_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_images", + "description": "get_images action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "update_image", + "description": "update_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "set_image", + "description": "set_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "type", + "description": "" + }, + { + "name": "mode", + "description": "" + } + ], + "action_data": [ + { + "name": "read", + "description": "read action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "write", + "description": "write action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "execute", + "description": "execute action", + "policies": [], + "category": { + "name": "type" + } + } + ], + "action_assignments": [ + { + "action": {"name": "use_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "execute"}] + }, + { + "action": {"name": "update_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "write"}] + }, + { + "action": {"name": "set_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "write"}] + }, + { + "action": {"name": "get_images"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}] + } + ], + "meta_rules": [ + { + "name": "attrs", + "description": "", + "subject_categories": [{"name": "role"}], + "object_categories": [{"name": "id"}], + "action_categories": [{"name": "type"}, {"attr": "mode"}] + } + ], + "rules": [ + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}, {"attr": "run"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "write"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "execute"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}, {"attr": "run"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "write"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm3"}], + "action_data": [{"name": "read"}, {"attr": "run"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm3"}], + "action_data": [{"name": "read"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}, {"attr": "run"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "write"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}, {"attr": "run"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "attrs"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}, {"attr": "build"}] + }, + "policy": {"name": "Attrs Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + } + ], + "checks": { + "granted": [ + ["admin", "vm1", "get_images"], + ["admin", "vm1", "set_image"], + ["admin", "vm1", "use_image"], + ["admin", "vm2", "get_images"], + ["admin", "vm2", "set_image"], + ["admin", "vm3", "get_images"], + ["demo", "vm1", "get_images"], + ["demo", "vm1", "set_image"], + ["demo", "vm2", "get_images"], + ["demo", "vm1", "get_images"] + ], + "denied": [ + ["admin", "vm2", "update_image"], + ["admin", "vm3", "set_image"], + ["admin", "vm3", "update_image"], + ["demo", "vm1", "update_image"], + ["demo", "vm2", "set_image"], + ["demo", "vm2", "update_image"], + ["demo", "vm3", "get_images"], + ["demo", "vm3", "set_image"], + ["demo", "vm3", "update_image"] + ] + } +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/policy_mls.json b/moon_engine/tests/func_policies/policy_mls.json new file mode 100644 index 00000000..6a8f22e9 --- /dev/null +++ b/moon_engine/tests/func_policies/policy_mls.json @@ -0,0 +1,495 @@ +{ + "policies": [ + { + "name": "MLS Policy", + "genre": "authz", + "description": "MLS policy", + "model": { + "name": "MLS" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "MLS", + "description": "", + "meta_rules": [ + { + "name": "mls" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + }, + { + "name": "demo", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "level", + "description": "subject level" + } + ], + "subject_data": [ + { + "name": "high", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "medium", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "low", + "description": "", + "policies": [], + "category": { + "name": "level" + } + } + ], + "subject_assignments": [ + { + "subject": {"name": "admin"}, + "category": {"name": "level"}, + "assignments": [{"name": "high"}] + }, + { + "subject": {"name": "demo"}, + "category": {"name": "level"}, + "assignments": [{"name": "low"}] + } + ], + "objects": [ + { + "name": "vm1", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + }, + { + "name": "vm2", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + }, + { + "name": "vm3", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "level", + "description": "object level" + } + ], + "object_data": [ + { + "name": "high", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "medium", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "low", + "description": "", + "policies": [], + "category": { + "name": "level" + } + } + ], + "object_assignments": [ + { + "object": {"name": "vm1"}, + "category": {"name": "level"}, + "assignments": [{"name": "high"}] + }, + { + "object": {"name": "vm2"}, + "category": {"name": "level"}, + "assignments": [{"name": "medium"}] + }, + { + "object": {"name": "vm3"}, + "category": {"name": "level"}, + "assignments": [{"name": "low"}] + } + ], + "actions": [ + { + "name": "use_image", + "description": "use_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_images", + "description": "get_images action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "update_image", + "description": "update_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "set_image", + "description": "set_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "type", + "description": "" + } + ], + "action_data": [ + { + "name": "read", + "description": "read action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "write", + "description": "write action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "execute", + "description": "execute action", + "policies": [], + "category": { + "name": "type" + } + } + ], + "action_assignments": [ + { + "action": {"name": "use_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "execute"}] + }, + { + "action": {"name": "update_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "write"}] + }, + { + "action": {"name": "set_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "write"}] + }, + { + "action": {"name": "get_images"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}] + } + ], + "meta_rules": [ + { + "name": "mls", + "description": "", + "subject_categories": [{"name": "level"}], + "object_categories": [{"name": "level"}], + "action_categories": [{"name": "type"}] + } + ], + "rules": [ + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "high"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "low"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "high"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "low"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "high"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "low"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + } + ], + "checks": { + "granted": [ + ["admin", "vm1", "get_images"], + ["admin", "vm1", "set_image"], + ["admin", "vm1", "use_image"], + ["admin", "vm2", "get_images"], + ["admin", "vm2", "set_image"], + ["admin", "vm3", "get_images"], + ["demo", "vm3", "get_images"], + ["demo", "vm3", "set_image"], + ["demo", "vm3", "get_images"], + ["demo", "vm3Unknown data with id", "get_images"] + ], + "denied": [ + ["admin", "vm2", "update_image"], + ["admin", "vm3", "set_image"], + ["admin", "vm3", "update_image"], + ["demo", "vm1", "update_image"], + ["demo", "vm2", "set_image"], + ["demo", "vm2", "update_image"], + ["demo", "vm3", "get_images"], + ["demo", "vm3", "set_image"], + ["demo", "vm3", "update_image"] + ] + } +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/policy_rbac.json b/moon_engine/tests/func_policies/policy_rbac.json new file mode 100644 index 00000000..a4bc959c --- /dev/null +++ b/moon_engine/tests/func_policies/policy_rbac.json @@ -0,0 +1,393 @@ +{ + "policies": [ + { + "name": "RBAC Policy", + "genre": "authz", + "description": "RBAC policy", + "model": { + "name": "RBAC" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "RBAC", + "description": "", + "meta_rules": [ + { + "name": "rbac" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "RBAC Policy" + } + ] + }, + { + "name": "demo", + "description": "", + "extra": {}, + "policies": [ + { + "name": "RBAC Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "role of a user" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "user", + "description": "", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": {"name": "admin"}, + "category": {"name": "role"}, + "assignments": [{"name": "admin"}] + }, + { + "subject": {"name": "admin"}, + "category": {"name": "role"}, + "assignments": [{"name": "user"}] + }, + { + "subject": {"name": "demo"}, + "category": {"name": "role"}, + "assignments": [{"name": "user"}] + } + ], + "objects": [ + { + "name": "vm1", + "description": "", + "extra": {}, + "policies": [ + { + "name": "RBAC Policy" + } + ] + }, + { + "name": "vm2", + "description": "", + "extra": {}, + "policies": [ + { + "name": "RBAC Policy" + } + ] + }, + { + "name": "vm3", + "description": "", + "extra": {}, + "policies": [ + { + "name": "RBAC Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "identification of the object" + } + ], + "object_data": [ + { + "name": "vm1", + "description": "", + "policies": [], + "category": { + "name": "id" + } + }, + { + "name": "vm2", + "description": "", + "policies": [], + "category": { + "name": "id" + } + }, + { + "name": "vm3", + "description": "", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": {"name": "vm1"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm1"}] + }, + { + "object": {"name": "vm2"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm2"}] + }, + { + "object": {"name": "vm3"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm3"}] + } + ], + "actions": [ + { + "name": "use_image", + "description": "use_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_images", + "description": "get_images action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "update_image", + "description": "update_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "set_image", + "description": "set_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "type", + "description": "" + } + ], + "action_data": [ + { + "name": "read", + "description": "read action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "write", + "description": "write action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "execute", + "description": "execute action", + "policies": [], + "category": { + "name": "type" + } + } + ], + "action_assignments": [ + { + "action": {"name": "use_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "execute"}] + }, + { + "action": {"name": "update_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "write"}] + }, + { + "action": {"name": "set_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "write"}] + }, + { + "action": {"name": "get_images"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}] + } + ], + "meta_rules": [ + { + "name": "rbac", + "description": "", + "subject_categories": [{"name": "role"}], + "object_categories": [{"name": "id"}], + "action_categories": [{"name": "type"}] + } + ], + "rules": [ + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm3"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "RBAC Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + } + ], + "checks": { + "granted": [ + ["admin", "vm1", "get_images"], + ["admin", "vm1", "set_image"], + ["admin", "vm1", "use_image"], + ["admin", "vm2", "get_images"], + ["admin", "vm2", "set_image"], + ["admin", "vm3", "get_images"], + ["demo", "vm1", "get_images"], + ["demo", "vm1", "set_image"], + ["demo", "vm2", "get_images"], + ["demo", "vm1", "get_images"] + ], + "denied": [ + ["admin", "vm2", "update_image"], + ["admin", "vm3", "set_image"], + ["admin", "vm3", "update_image"], + ["demo", "vm1", "update_image"], + ["demo", "vm2", "set_image"], + ["demo", "vm2", "update_image"], + ["demo", "vm3", "get_images"], + ["demo", "vm3", "set_image"], + ["demo", "vm3", "update_image"] + ] + } +}
\ No newline at end of file diff --git a/moon_engine/tests/func_policies/test_base_configuration.py b/moon_engine/tests/func_policies/test_base_configuration.py new file mode 100644 index 00000000..77f97df2 --- /dev/null +++ b/moon_engine/tests/func_policies/test_base_configuration.py @@ -0,0 +1,30 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import json +import logging +import requests +import yaml +from moon_engine.api import configuration + +LOGGER = logging.getLogger("moon.engine.server") + + +def test_rbac(): + filename = "moon.yaml" + configuration.set_configuration(yaml.safe_load(open(filename))) + data = json.loads(open(configuration.get_configuration("data")).read()) + for granted in data.get("checks", {}).get("granted", {}): + req = requests.get("http://127.0.0.1:10000/authz/{}/{}/{}".format( + granted[0], granted[1], granted[2] + )) + assert req.status_code == 204 diff --git a/moon_engine/tests/func_policies/tmp/glance.policy.json b/moon_engine/tests/func_policies/tmp/glance.policy.json new file mode 100644 index 00000000..5b1f6be7 --- /dev/null +++ b/moon_engine/tests/func_policies/tmp/glance.policy.json @@ -0,0 +1,63 @@ +{ + "context_is_admin": "role:admin", + "default": "role:admin", + + "add_image": "", + "delete_image": "", + "get_image": "", + "get_images": "", + "modify_image": "", + "publicize_image": "role:admin", + "communitize_image": "", + "copy_from": "", + + "download_image": "", + "upload_image": "", + + "delete_image_location": "", + "get_image_location": "", + "set_image_location": "", + + "add_member": "", + "delete_member": "", + "get_member": "", + "get_members": "", + "modify_member": "", + + "manage_image_cache": "role:admin", + + "get_task": "", + "get_tasks": "", + "add_task": "", + "modify_task": "", + "tasks_api_access": "role:admin", + + "deactivate": "", + "reactivate": "", + + "get_metadef_namespace": "", + "get_metadef_namespaces":"", + "modify_metadef_namespace":"", + "add_metadef_namespace":"", + + "get_metadef_object":"", + "get_metadef_objects":"", + "modify_metadef_object":"", + "add_metadef_object":"", + + "list_metadef_resource_types":"", + "get_metadef_resource_type":"", + "add_metadef_resource_type_association":"", + + "get_metadef_property":"", + "get_metadef_properties":"", + "modify_metadef_property":"", + "add_metadef_property":"", + + "get_metadef_tag":"", + "get_metadef_tags":"", + "modify_metadef_tag":"", + "add_metadef_tag":"", + "add_metadef_tags":"" + +} diff --git a/moon_engine/tests/func_policies/tmp/keystone.policy.json b/moon_engine/tests/func_policies/tmp/keystone.policy.json new file mode 100644 index 00000000..263912bf --- /dev/null +++ b/moon_engine/tests/func_policies/tmp/keystone.policy.json @@ -0,0 +1,260 @@ +{ + "admin_required": "role:admin", + "cloud_admin": "role:admin and (is_admin_project:True or domain_id:admin_domain_id)", + "service_role": "role:service", + "service_or_admin": "rule:admin_required or rule:service_role", + "owner": "user_id:%(user_id)s or user_id:%(target.token.user_id)s", + "admin_or_owner": "(rule:admin_required and domain_id:%(target.token.user.domain.id)s) or rule:owner", + "admin_and_matching_domain_id": "rule:admin_required and domain_id:%(domain_id)s", + "service_admin_or_owner": "rule:service_or_admin or rule:owner", + + "default": "rule:admin_required", + + "identity:get_region": "", + "identity:list_regions": "", + "identity:create_region": "rule:cloud_admin", + "identity:update_region": "rule:cloud_admin", + "identity:delete_region": "rule:cloud_admin", + + "identity:get_service": "rule:admin_required", + "identity:list_services": "rule:admin_required", + "identity:create_service": "rule:cloud_admin", + "identity:update_service": "rule:cloud_admin", + "identity:delete_service": "rule:cloud_admin", + + "identity:get_endpoint": "rule:admin_required", + "identity:list_endpoints": "rule:admin_required", + "identity:create_endpoint": "rule:cloud_admin", + "identity:update_endpoint": "rule:cloud_admin", + "identity:delete_endpoint": "rule:cloud_admin", + + "identity:get_registered_limit": "", + "identity:list_registered_limits": "", + "identity:create_registered_limits": "rule:admin_required", + "identity:update_registered_limits": "rule:admin_required", + "identity:delete_registered_limit": "rule:admin_required", + + "identity:get_limit": "", + "identity:list_limits": "", + "identity:create_limits": "rule:admin_required", + "identity:update_limits": "rule:admin_required", + "identity:delete_limit": "rule:admin_required", + + "identity:get_domain": "rule:cloud_admin or rule:admin_and_matching_domain_id or token.project.domain.id:%(target.domain.id)s", + "identity:list_domains": "rule:cloud_admin", + "identity:create_domain": "rule:cloud_admin", + "identity:update_domain": "rule:cloud_admin", + "identity:delete_domain": "rule:cloud_admin", + + "admin_and_matching_target_project_domain_id": "rule:admin_required and domain_id:%(target.project.domain_id)s", + "admin_and_matching_project_domain_id": "rule:admin_required and domain_id:%(project.domain_id)s", + "identity:get_project": "rule:cloud_admin or rule:admin_and_matching_target_project_domain_id or project_id:%(target.project.id)s", + "identity:list_projects": "rule:cloud_admin or rule:admin_and_matching_domain_id", + "identity:list_user_projects": "rule:owner or rule:admin_and_matching_domain_id", + "identity:create_project": "rule:cloud_admin or rule:admin_and_matching_project_domain_id", + "identity:update_project": "rule:cloud_admin or rule:admin_and_matching_target_project_domain_id", + "identity:delete_project": "rule:cloud_admin or rule:admin_and_matching_target_project_domain_id", + "identity:create_project_tag": "rule:admin_required", + "identity:delete_project_tag": "rule:admin_required", + "identity:get_project_tag": "rule:admin_required", + "identity:list_project_tags": "rule:admin_required", + "identity:delete_project_tags": "rule:admin_required", + "identity:update_project_tags": "rule:admin_required", + + "admin_and_matching_target_user_domain_id": "rule:admin_required and domain_id:%(target.user.domain_id)s", + "admin_and_matching_user_domain_id": "rule:admin_required and domain_id:%(user.domain_id)s", + "identity:get_user": "rule:cloud_admin or rule:admin_and_matching_target_user_domain_id or rule:owner", + "identity:list_users": "rule:cloud_admin or rule:admin_and_matching_domain_id", + "identity:create_user": "rule:cloud_admin or rule:admin_and_matching_user_domain_id", + "identity:update_user": "rule:cloud_admin or rule:admin_and_matching_target_user_domain_id", + "identity:delete_user": "rule:cloud_admin or rule:admin_and_matching_target_user_domain_id", + + "admin_and_matching_target_group_domain_id": "rule:admin_required and domain_id:%(target.group.domain_id)s", + "admin_and_matching_group_domain_id": "rule:admin_required and domain_id:%(group.domain_id)s", + "identity:get_group": "rule:cloud_admin or rule:admin_and_matching_target_group_domain_id", + "identity:list_groups": "rule:cloud_admin or rule:admin_and_matching_domain_id", + "identity:list_groups_for_user": "rule:owner or rule:admin_and_matching_target_user_domain_id", + "identity:create_group": "rule:cloud_admin or rule:admin_and_matching_group_domain_id", + "identity:update_group": "rule:cloud_admin or rule:admin_and_matching_target_group_domain_id", + "identity:delete_group": "rule:cloud_admin or rule:admin_and_matching_target_group_domain_id", + "identity:list_users_in_group": "rule:cloud_admin or rule:admin_and_matching_target_group_domain_id", + "identity:remove_user_from_group": "rule:cloud_admin or rule:admin_and_matching_target_group_domain_id", + "identity:check_user_in_group": "rule:cloud_admin or rule:admin_and_matching_target_group_domain_id", + "identity:add_user_to_group": "rule:cloud_admin or rule:admin_and_matching_target_group_domain_id", + + "identity:get_credential": "rule:admin_required", + "identity:list_credentials": "rule:admin_required or user_id:%(user_id)s", + "identity:create_credential": "rule:admin_required", + "identity:update_credential": "rule:admin_required", + "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_required or rule:owner", + "identity:ec2_create_credential": "rule:admin_required or rule:owner", + "identity:ec2_delete_credential": "rule:admin_required or (rule:owner and user_id:%(target.credential.user_id)s)", + + "identity:get_role": "rule:admin_required", + "identity:list_roles": "rule:admin_required", + "identity:create_role": "rule:cloud_admin", + "identity:update_role": "rule:cloud_admin", + "identity:delete_role": "rule:cloud_admin", + + "identity:get_domain_role": "rule:cloud_admin or rule:get_domain_roles", + "identity:list_domain_roles": "rule:cloud_admin or rule:list_domain_roles", + "identity:create_domain_role": "rule:cloud_admin or rule:domain_admin_matches_domain_role", + "identity:update_domain_role": "rule:cloud_admin or rule:domain_admin_matches_target_domain_role", + "identity:delete_domain_role": "rule:cloud_admin or rule:domain_admin_matches_target_domain_role", + "domain_admin_matches_domain_role": "rule:admin_required and domain_id:%(role.domain_id)s", + "get_domain_roles": "rule:domain_admin_matches_target_domain_role or rule:project_admin_matches_target_domain_role", + "domain_admin_matches_target_domain_role": "rule:admin_required and domain_id:%(target.role.domain_id)s", + "project_admin_matches_target_domain_role": "rule:admin_required and project_domain_id:%(target.role.domain_id)s", + "list_domain_roles": "rule:domain_admin_matches_filter_on_list_domain_roles or rule:project_admin_matches_filter_on_list_domain_roles", + "domain_admin_matches_filter_on_list_domain_roles": "rule:admin_required and domain_id:%(domain_id)s", + "project_admin_matches_filter_on_list_domain_roles": "rule:admin_required and project_domain_id:%(domain_id)s", + "admin_and_matching_prior_role_domain_id": "rule:admin_required and domain_id:%(target.prior_role.domain_id)s", + "implied_role_matches_prior_role_domain_or_global": "(domain_id:%(target.implied_role.domain_id)s or None:%(target.implied_role.domain_id)s)", + + "identity:get_implied_role": "rule:cloud_admin or rule:admin_and_matching_prior_role_domain_id", + "identity:list_implied_roles": "rule:cloud_admin or rule:admin_and_matching_prior_role_domain_id", + "identity:create_implied_role": "rule:cloud_admin or (rule:admin_and_matching_prior_role_domain_id and rule:implied_role_matches_prior_role_domain_or_global)", + "identity:delete_implied_role": "rule:cloud_admin or rule:admin_and_matching_prior_role_domain_id", + "identity:list_role_inference_rules": "rule:cloud_admin", + "identity:check_implied_role": "rule:cloud_admin or rule:admin_and_matching_prior_role_domain_id", + + "identity:list_system_grants_for_user": "rule:admin_required", + "identity:check_system_grant_for_user": "rule:admin_required", + "identity:create_system_grant_for_user": "rule:admin_required", + "identity:revoke_system_grant_for_user": "rule:admin_required", + + "identity:list_system_grants_for_group": "rule:admin_required", + "identity:check_system_grant_for_group": "rule:admin_required", + "identity:create_system_grant_for_group": "rule:admin_required", + "identity:revoke_system_grant_for_group": "rule:admin_required", + + "identity:check_grant": "rule:cloud_admin or rule:domain_admin_for_grants or rule:project_admin_for_grants", + "identity:list_grants": "rule:cloud_admin or rule:domain_admin_for_list_grants or rule:project_admin_for_list_grants", + "identity:create_grant": "rule:cloud_admin or rule:domain_admin_for_grants or rule:project_admin_for_grants", + "identity:revoke_grant": "rule:cloud_admin or rule:domain_admin_for_grants or rule:project_admin_for_grants", + "domain_admin_for_grants": "rule:domain_admin_for_global_role_grants or rule:domain_admin_for_domain_role_grants", + "domain_admin_for_global_role_grants": "rule:admin_required and None:%(target.role.domain_id)s and rule:domain_admin_grant_match", + "domain_admin_for_domain_role_grants": "rule:admin_required and domain_id:%(target.role.domain_id)s and rule:domain_admin_grant_match", + "domain_admin_grant_match": "domain_id:%(domain_id)s or domain_id:%(target.project.domain_id)s", + "project_admin_for_grants": "rule:project_admin_for_global_role_grants or rule:project_admin_for_domain_role_grants", + "project_admin_for_global_role_grants": "rule:admin_required and None:%(target.role.domain_id)s and project_id:%(project_id)s", + "project_admin_for_domain_role_grants": "rule:admin_required and project_domain_id:%(target.role.domain_id)s and project_id:%(project_id)s", + "domain_admin_for_list_grants": "rule:admin_required and rule:domain_admin_grant_match", + "project_admin_for_list_grants": "rule:admin_required and project_id:%(project_id)s", + + "admin_on_domain_filter": "rule:admin_required and domain_id:%(scope.domain.id)s", + "admin_on_project_filter": "rule:admin_required and project_id:%(scope.project.id)s", + "admin_on_domain_of_project_filter": "rule:admin_required and domain_id:%(target.project.domain_id)s", + "identity:list_role_assignments": "rule:cloud_admin or rule:admin_on_domain_filter or rule:admin_on_project_filter", + "identity:list_role_assignments_for_tree": "rule:cloud_admin or rule:admin_on_domain_of_project_filter", + "identity:get_policy": "rule:cloud_admin", + "identity:list_policies": "rule:cloud_admin", + "identity:create_policy": "rule:cloud_admin", + "identity:update_policy": "rule:cloud_admin", + "identity:delete_policy": "rule:cloud_admin", + + "identity:check_token": "rule:admin_or_owner", + "identity:validate_token": "rule:service_admin_or_owner", + "identity:validate_token_head": "rule:service_or_admin", + "identity:revocation_list": "rule:service_or_admin", + "identity:revoke_token": "rule:admin_or_owner", + + "identity:create_trust": "user_id:%(trust.trustor_user_id)s", + "identity:list_trusts": "", + "identity:list_roles_for_trust": "", + "identity:get_role_for_trust": "", + "identity:delete_trust": "", + "identity:get_trust": "", + + "identity:create_consumer": "rule:admin_required", + "identity:get_consumer": "rule:admin_required", + "identity:list_consumers": "rule:admin_required", + "identity:delete_consumer": "rule:admin_required", + "identity:update_consumer": "rule:admin_required", + + "identity:authorize_request_token": "rule:admin_required", + "identity:list_access_token_roles": "rule:admin_required", + "identity:get_access_token_role": "rule:admin_required", + "identity:list_access_tokens": "rule:admin_required", + "identity:get_access_token": "rule:admin_required", + "identity:delete_access_token": "rule:admin_required", + + "identity:list_projects_for_endpoint": "rule:admin_required", + "identity:add_endpoint_to_project": "rule:admin_required", + "identity:check_endpoint_in_project": "rule:admin_required", + "identity:list_endpoints_for_project": "rule:admin_required", + "identity:remove_endpoint_from_project": "rule:admin_required", + + "identity:create_endpoint_group": "rule:admin_required", + "identity:list_endpoint_groups": "rule:admin_required", + "identity:get_endpoint_group": "rule:admin_required", + "identity:update_endpoint_group": "rule:admin_required", + "identity:delete_endpoint_group": "rule:admin_required", + "identity:list_projects_associated_with_endpoint_group": "rule:admin_required", + "identity:list_endpoints_associated_with_endpoint_group": "rule:admin_required", + "identity:get_endpoint_group_in_project": "rule:admin_required", + "identity:list_endpoint_groups_for_project": "rule:admin_required", + "identity:add_endpoint_group_to_project": "rule:admin_required", + "identity:remove_endpoint_group_from_project": "rule:admin_required", + + "identity:create_identity_provider": "rule:cloud_admin", + "identity:list_identity_providers": "rule:cloud_admin", + "identity:get_identity_provider": "rule:cloud_admin", + "identity:update_identity_provider": "rule:cloud_admin", + "identity:delete_identity_provider": "rule:cloud_admin", + + "identity:create_protocol": "rule:cloud_admin", + "identity:update_protocol": "rule:cloud_admin", + "identity:get_protocol": "rule:cloud_admin", + "identity:list_protocols": "rule:cloud_admin", + "identity:delete_protocol": "rule:cloud_admin", + + "identity:create_mapping": "rule:cloud_admin", + "identity:get_mapping": "rule:cloud_admin", + "identity:list_mappings": "rule:cloud_admin", + "identity:delete_mapping": "rule:cloud_admin", + "identity:update_mapping": "rule:cloud_admin", + + "identity:create_service_provider": "rule:cloud_admin", + "identity:list_service_providers": "rule:cloud_admin", + "identity:get_service_provider": "rule:cloud_admin", + "identity:update_service_provider": "rule:cloud_admin", + "identity:delete_service_provider": "rule:cloud_admin", + + "identity:get_auth_catalog": "", + "identity:get_auth_projects": "", + "identity:get_auth_domains": "", + "identity:get_auth_system": "", + + "identity:list_projects_for_user": "", + "identity:list_domains_for_user": "", + + "identity:list_revoke_events": "rule:service_or_admin", + + "identity:create_policy_association_for_endpoint": "rule:cloud_admin", + "identity:check_policy_association_for_endpoint": "rule:cloud_admin", + "identity:delete_policy_association_for_endpoint": "rule:cloud_admin", + "identity:create_policy_association_for_service": "rule:cloud_admin", + "identity:check_policy_association_for_service": "rule:cloud_admin", + "identity:delete_policy_association_for_service": "rule:cloud_admin", + "identity:create_policy_association_for_region_and_service": "rule:cloud_admin", + "identity:check_policy_association_for_region_and_service": "rule:cloud_admin", + "identity:delete_policy_association_for_region_and_service": "rule:cloud_admin", + "identity:get_policy_for_endpoint": "rule:cloud_admin", + "identity:list_endpoints_for_policy": "rule:cloud_admin", + + "identity:create_domain_config": "rule:cloud_admin", + "identity:get_domain_config": "rule:cloud_admin", + "identity:get_security_compliance_domain_config": "", + "identity:update_domain_config": "rule:cloud_admin", + "identity:delete_domain_config": "rule:cloud_admin", + "identity:get_domain_config_default": "rule:cloud_admin", + + "identity:get_application_credential": "rule:admin_or_owner", + "identity:list_application_credentials": "rule:admin_or_owner", + "identity:create_application_credential": "rule:admin_or_owner", + "identity:delete_application_credential": "rule:admin_or_owner" +} diff --git a/moon_engine/tests/func_postman/Test Authz through Wrapper.postman_collection.json b/moon_engine/tests/func_postman/Test Authz through Wrapper.postman_collection.json new file mode 100644 index 00000000..bd710eb2 --- /dev/null +++ b/moon_engine/tests/func_postman/Test Authz through Wrapper.postman_collection.json @@ -0,0 +1,24 @@ +{ + "info": { + "_postman_id": "91449fd3-9f70-4e95-b3b7-84365cbc057d", + "name": "Test Authz through Wrapper", + "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" + }, + "item": [ + { + "name": "Get status", + "request": { + "method": "GET", + "header": [], + "body": { + "mode": "raw", + "raw": "" + }, + "url": { + "raw": "" + } + }, + "response": [] + } + ] +}
\ No newline at end of file diff --git a/moon_engine/tests/func_postman/db.json b/moon_engine/tests/func_postman/db.json new file mode 100644 index 00000000..a06285d9 --- /dev/null +++ b/moon_engine/tests/func_postman/db.json @@ -0,0 +1 @@ +{"_default": {"1": {"username": "admin", "password": "2ee64edbdc7e6b7f298b6a06b04b066ee8a9e0531e93d16239ff1fa13be19c041d86e7fef8771e09dcc3295421c2ef1bd9dc80209f0f18413572363b4c510d47", "salt": "9d52dcaedac33f02454bcc2abc06c65c28070cbbe50cbbdfd89e483259cd1616ad240c2c69545c2a53644e49b2692e33a9f9947b5a2608eb185ec87ac5ed1c7f", "api_key": "f9615b75d70d2425bc8d107927d88dddf901444e540d8d7bd309b78c3246eb7106bf91fc5f7e9a404407ea348a6ecb75e865d6d60d0aa0294dd7cd032dfb0401"}}}
\ No newline at end of file diff --git a/moon_engine/tests/func_postman/gunicorn.cfg b/moon_engine/tests/func_postman/gunicorn.cfg new file mode 100644 index 00000000..a1ec8f9c --- /dev/null +++ b/moon_engine/tests/func_postman/gunicorn.cfg @@ -0,0 +1,3 @@ +bind = "127.0.0.1:10000" +workers = 2 +moon = "moon.yaml" diff --git a/moon_engine/tests/func_postman/moon.yaml b/moon_engine/tests/func_postman/moon.yaml new file mode 100644 index 00000000..523bb75a --- /dev/null +++ b/moon_engine/tests/func_postman/moon.yaml @@ -0,0 +1,49 @@ +api_token: false +data: '' +database: + pwd_file: db.json +incremental_updates: false +logging: + formatters: + brief: + format: '%(levelname)s %(name)s %(message)-30s' + custom: + format: '%(asctime)-15s %(levelname)s %(name)s %(message)s' + handlers: + console: + class: logging.StreamHandler + formatter: custom + level: 10 + stream: ext://sys.stdout + file: + backupCount: 3 + class: logging.handlers.RotatingFileHandler + filename: moon.log + formatter: custom + level: DEBUG + maxBytes: 1048576 + loggers: + moon: + handlers: + - console + - file + level: DEBUG + propagate: false + root: + handlers: + - console + level: ERROR + version: 1 +management: + password: admin + url: http://127.0.0.1:8000 + user: admin +orchestration: + config_dir: /tmp + connection: local + driver: moon_engine.plugins.pyorchestrator + port: 20000...20100 +plugins: + directory: /var/moon/plugins +type: wrapper +uuid: 2dd13f3dd36048d88346962d62920ac6 diff --git a/moon_engine/tests/func_postman/run.sh b/moon_engine/tests/func_postman/run.sh new file mode 100755 index 00000000..f4153d28 --- /dev/null +++ b/moon_engine/tests/func_postman/run.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +hug -m moon_engine.server -p 10000 gunicorn.cfg diff --git a/moon_engine/tests/performance_tests/authz_pipeline.py b/moon_engine/tests/performance_tests/authz_pipeline.py new file mode 100644 index 00000000..7d2b48ce --- /dev/null +++ b/moon_engine/tests/performance_tests/authz_pipeline.py @@ -0,0 +1,115 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +from locust import TaskSet, task +import logging +import json + +LOGGER = logging.getLogger("locust") + + +class AuthzPipelineRequests(TaskSet): + token = "" + moon_errors = 0 + moon_requests = 0 + stats_filename = "/tmp/perf_stats.log" + + def on_start(self): + """ on_start is called when a Locust start before any task is scheduled """ + self.moon_errors = [] + + def __del__(self): + """ on_stop is called when the TaskSet is stopping """ + stats = {} + try: + stats = json.loads(open(self.stats_filename).read()) + except Exception: + pass + _num = stats.get("errors", 0) + _num += len(self.moon_errors) + _total = stats.get("total", 0) + _total += self.moon_requests + _list = stats.get("list", []) + _list.extend(self.moon_errors) + _percent = _num * 100 / _total + json.dump({"errors": _num, "total": _total, + "percentage": "{0:.2f}".format(_percent), + "list": _list}, + open(self.stats_filename, "w"), indent=4) + + def get(self, url, status_code=200): + with self.client.get(url, catch_response=True) as response: + self.moon_requests += 1 + if response.status_code != status_code: + self.moon_errors.append((url, f"{response.status_code}/{status_code}")) + response.success() + + @task(10) + def authz_ok1(self): + url = "/authz/{}/{}/{}".format( + "admin", "vm1", "use_image" + ) + self.get(url) + + @task(10) + def authz_ok2(self): + url = "/authz/{}/{}/{}".format( + "admin", "vm1", "get_images" + ) + self.get(url) + + @task(10) + def authz_ok3(self): + url = "/authz/{}/{}/{}".format( + "admin", "vm1", "set_image" + ) + self.get(url) + + @task(10) + def authz_ok4(self): + url = "/authz/{}/{}/{}".format( + "demo", "vm1", "set_image" + ) + self.get(url) + + @task(10) + def authz_ok5(self): + url = "/authz/{}/{}/{}".format( + "demo", "vm1", "get_images" + ) + self.get(url) + + @task(10) + def authz_rule_ko(self): + url = "/authz/{}/{}/{}".format("demo", "vm1", "use_image") + self.get(url, 403) + + @task(10) + def authz_subject_ko(self): + url = "/authz/{}/{}/{}".format("admins", "vm1", "use_image") + self.get(url, 403) + + @task(10) + def authz_object_ko(self): + url = "/authz/{}/{}/{}".format("admin", "vm4", "use_image") + self.get(url, 403) + + @task(10) + def authz_action_ko(self): + url = "/authz/{}/{}/{}".format("admin", "vm1", "use_images") + self.get(url, 403) + + @task(1) + def status(self): + self.client.get("/status/") + + diff --git a/moon_engine/tests/performance_tests/locustfile.py b/moon_engine/tests/performance_tests/locustfile.py new file mode 100644 index 00000000..cf077720 --- /dev/null +++ b/moon_engine/tests/performance_tests/locustfile.py @@ -0,0 +1,26 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +from locust import HttpLocust, TaskSet +import authz_pipeline + + +class MoonRequests(TaskSet): + tasks = { + authz_pipeline.AuthzPipelineRequests: 10, + } + + +class MoonUser(HttpLocust): + task_set = MoonRequests + min_wait = 10 + max_wait = 100 diff --git a/moon_engine/tests/performance_tests/policy_rbac.json b/moon_engine/tests/performance_tests/policy_rbac.json new file mode 100644 index 00000000..2f7c704e --- /dev/null +++ b/moon_engine/tests/performance_tests/policy_rbac.json @@ -0,0 +1,411 @@ +{ + "policies": [ + { + "name": "Policy for Locust", + "genre": "authz", + "description": "Policy for Locust", + "model": { + "name": "RBAC" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "RBAC", + "description": "", + "meta_rules": [ + { + "name": "rbac" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Policy for Locust" + } + ] + }, + { + "name": "demo", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Policy for Locust" + } + ] + } + ], + "subject_categories": [ + { + "name": "role", + "description": "role of a user" + } + ], + "subject_data": [ + { + "name": "admin", + "description": "", + "policies": [], + "category": { + "name": "role" + } + }, + { + "name": "user", + "description": "", + "policies": [], + "category": { + "name": "role" + } + } + ], + "subject_assignments": [ + { + "subject": {"name": "admin"}, + "category": {"name": "role"}, + "assignments": [{"name": "admin"}] + }, + { + "subject": {"name": "admin"}, + "category": {"name": "role"}, + "assignments": [{"name": "user"}] + }, + { + "subject": {"name": "demo"}, + "category": {"name": "role"}, + "assignments": [{"name": "user"}] + } + ], + "objects": [ + { + "name": "vm1", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Policy for Locust" + } + ] + }, + { + "name": "vm2", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Policy for Locust" + } + ] + }, + { + "name": "vm3", + "description": "", + "extra": {}, + "policies": [ + { + "name": "Policy for Locust" + } + ] + } + ], + "object_categories": [ + { + "name": "id", + "description": "identification of the object" + } + ], + "object_data": [ + { + "name": "vm1", + "description": "", + "policies": [], + "category": { + "name": "id" + } + }, + { + "name": "vm2", + "description": "", + "policies": [], + "category": { + "name": "id" + } + }, + { + "name": "vm3", + "description": "", + "policies": [], + "category": { + "name": "id" + } + } + ], + "object_assignments": [ + { + "object": {"name": "vm1"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm1"}] + }, + { + "object": {"name": "vm2"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm2"}] + }, + { + "object": {"name": "vm3"}, + "category": {"name": "id"}, + "assignments": [{"name": "vm3"}] + } + ], + "actions": [ + { + "name": "use_image", + "description": "use_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [ + { + "name": "Policy for Locust" + } + ] + }, + { + "name": "get_images", + "description": "get_images action for glance", + "extra": { + "component": "glance" + }, + "policies": [ + { + "name": "Policy for Locust" + } + ] + }, + { + "name": "update_image", + "description": "update_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [ + { + "name": "Policy for Locust" + } + ] + }, + { + "name": "set_image", + "description": "set_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [ + { + "name": "Policy for Locust" + } + ] + } + ], + "action_categories": [ + { + "name": "type", + "description": "" + } + ], + "action_data": [ + { + "name": "read", + "description": "read action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "write", + "description": "write action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "execute", + "description": "execute action", + "policies": [], + "category": { + "name": "type" + } + } + ], + "action_assignments": [ + { + "action": {"name": "use_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "execute"}] + }, + { + "action": {"name": "update_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "write"}] + }, + { + "action": {"name": "set_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "write"}] + }, + { + "action": {"name": "get_images"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}] + } + ], + "meta_rules": [ + { + "name": "rbac", + "description": "", + "subject_categories": [{"name": "role"}], + "object_categories": [{"name": "id"}], + "action_categories": [{"name": "type"}] + } + ], + "rules": [ + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "admin"}], + "object_data": [{"name": "vm3"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm1"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "rbac"}, + "rule": { + "subject_data": [{"name": "user"}], + "object_data": [{"name": "vm2"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "Policy for Locust"}, + "instructions": [{"decision": "grant"}], + "enabled": true + } + ], + "checks": { + "granted": [ + ["admin", "vm1", "get_images"], + ["admin", "vm1", "set_image"], + ["admin", "vm1", "use_image"], + ["admin", "vm2", "get_images"], + ["admin", "vm2", "set_image"], + ["admin", "vm3", "get_images"], + ["user", "vm1", "get_images"], + ["user", "vm1", "set_image"], + ["user", "vm2", "get_images"], + ["user", "vm1", "get_images"] + ], + "denied": [ + ["admin", "vm2", "update_image"], + ["admin", "vm3", "set_image"], + ["admin", "vm3", "update_image"], + ["user", "vm1", "update_image"], + ["user", "vm2", "set_image"], + ["user", "vm2", "update_image"], + ["user", "vm1", "use_image"], + ["user", "vm2", "use_image"], + ["user", "vm3", "get_images"], + ["user", "vm3", "set_image"], + ["user", "vm3", "update_image"] + ] + } +}
\ No newline at end of file diff --git a/moon_engine/tests/performance_tests/utils.py b/moon_engine/tests/performance_tests/utils.py new file mode 100644 index 00000000..21ac78bb --- /dev/null +++ b/moon_engine/tests/performance_tests/utils.py @@ -0,0 +1,60 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import json + + +def login(taskset): + req = taskset.client.get("/auth", auth=("admin", "admin")) + taskset.token = req.content.decode("utf-8").strip('"') + + +def logout(taskset): + pass + + +def log(msg): + open("/tmp/tests.log", 'a').write(str(msg) + "\n") + + +def import_policy(client, token): + import_data = open("policy_rbac.json").read() + req = client.post("/import", headers={"X-Api-Key": token}, data=json.loads(import_data)) + print(req) + content = json.loads(req.content.decode("utf-8")) + for policy_key, policy_value in content.get("policies", {}).items(): + if policy_value.get("name") == "Policy for Locust": + return policy_key + + +def create_pdp(client, token, policy_id, vim_project_id=111111111111): + req = client.post("/pdp", headers={"X-Api-Key": token}, data={ + "name": "PDP for Locust", + "vim_project_id": vim_project_id, + "security_pipeline": [policy_id] + }) + content = json.loads(req.content.decode("utf-8")) + for pdp_key, pdp_value in content.get("pdp", {}).items(): + if pdp_value.get("name") == "PDP for Locust": + return pdp_key + + +def delete_policy(client, token, policy_id): + print("deleting Policy {}".format(policy_id)) + client.delete("/policies/{}".format(policy_id), headers={"X-Api-Key": token}) + + +def delete_pdp(client, token, pdp_id): + print("deleting PDP {}".format(pdp_id)) + client.delete("/pdp/{}".format(pdp_id), headers={"X-Api-Key": token}) + + diff --git a/moon_engine/tests/unit_python/api/__init__.py b/moon_engine/tests/unit_python/api/__init__.py new file mode 100644 index 00000000..1856aa2c --- /dev/null +++ b/moon_engine/tests/unit_python/api/__init__.py @@ -0,0 +1,12 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + diff --git a/moon_engine/tests/unit_python/api/moon.yaml b/moon_engine/tests/unit_python/api/moon.yaml new file mode 100644 index 00000000..9272ccce --- /dev/null +++ b/moon_engine/tests/unit_python/api/moon.yaml @@ -0,0 +1,54 @@ +type: "pipeline" +uuid: "a64beb1c-c224-474f-b4ba-dd43173e7101" +manager_url: "http://127.0.0.1:20000" +incremental_updates: false +api_token: +data: conf/policy_example.json +debug: true +management: + token_file: moon_engine_users.json + +orchestration: + driver: moon_engine.plugins.pyorchestrator + connection: local + port: 20000...20100 + config_dir: /tmp + +authorization: + driver: moon_engine.plugins.authz + +plugins: + directory: /tmp + +logging: + version: 1 + + formatters: + brief: + format: "%(levelname)s %(name)s %(message)-30s" + custom: + format: "%(asctime)-15s %(levelname)s %(name)s %(message)s" + + handlers: + console: + class : logging.StreamHandler + formatter: custom + level : INFO + stream : ext://sys.stdout + file: + class : logging.handlers.RotatingFileHandler + formatter: custom + level : DEBUG + filename: /tmp/moon_engine.log + maxBytes: 1048576 + backupCount: 3 + + loggers: + moon: + level: DEBUG + handlers: [console, file] + propagate: no + + root: + level: ERROR + handlers: [console]
\ No newline at end of file diff --git a/moon_engine/tests/unit_python/api/pipeline/__init__.py b/moon_engine/tests/unit_python/api/pipeline/__init__.py new file mode 100644 index 00000000..582be686 --- /dev/null +++ b/moon_engine/tests/unit_python/api/pipeline/__init__.py @@ -0,0 +1,11 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + diff --git a/moon_engine/tests/unit_python/api/pipeline/test_authz.py b/moon_engine/tests/unit_python/api/pipeline/test_authz.py new file mode 100644 index 00000000..c405ddfd --- /dev/null +++ b/moon_engine/tests/unit_python/api/pipeline/test_authz.py @@ -0,0 +1,37 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import hug + + +def test_get_authz_authorized(): + from moon_engine.api.pipeline import authz + from moon_utilities.auth_functions import get_api_key_for_user + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + # FIXME: https://gitlab.forge.orange-labs.fr/moon/moon_cache/issues/1 + # req = benchmark(hug.test.get, authz, + # "/authz/89ba91c1-8dd5-4abf-bfde-7a66936c51a6/67b8008a-3f8d-4f8e-847e-b628f0f7ca0e/cdb3df22-0dc0" + # "-5a6e-a333-4b994827b068", headers=auth_headers) + # # req = hug.test.get(authz, "/authz/test/test/test", headers=auth_headers) + # assert req.status == hug.HTTP_204 + + +def test_get_authz_unauthorized(): + from moon_engine.api.pipeline import authz + from moon_utilities.auth_functions import get_api_key_for_user + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + # FIXME: https://gitlab.forge.orange-labs.fr/moon/moon_cache/issues/1 + # req = benchmark(hug.test.get, authz, + # "/authz/31fd15ad-1478-4a96-96fc-c887dddbfaf9/67b8008a-3f8d-4f8e-847e-b628f0f7ca0e/cdb3df22-0dc0" + # "-5a6e-a333-4b994827b068", headers=auth_headers) + # # req = hug.test.get(authz, "/authz/test/test/test", headers=auth_headers) + # assert req.status == hug.HTTP_403 diff --git a/moon_engine/tests/unit_python/api/pipeline/test_update.py b/moon_engine/tests/unit_python/api/pipeline/test_update.py new file mode 100644 index 00000000..94d5a4e4 --- /dev/null +++ b/moon_engine/tests/unit_python/api/pipeline/test_update.py @@ -0,0 +1,525 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import hug +import requests +from uuid import uuid4 + + +def test_pipeline_update_policy_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + key = next(iter(policies['policies'])) + policies['policies'][key]['name'] = "new " + policies['policies'][key]['name'] + req = hug.test.put(update, "/update/policy/{}".format(key), + policies['policies'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_update_policy_not_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + key = next(iter(policies['policies'])) + policies['policies'][key]['name'] = "new " + policies['policies'][key]['name'] + req = hug.test.put(update, "/update/policy/{}".format(uuid4().hex), + policies['policies'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_delete_policy(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + policies = response.json() + key = next(iter(policies['policies'])) + req = hug.test.delete(update, "/update/policy/{}".format(key), + headers=auth_headers) + assert req.status == hug.HTTP_202 + + +def test_pipeline_update_pdp_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + + pdps = response.json() + key = next(iter(pdps['pdps'])) + pdps['pdps'][key]['name'] = "new " + pdps['pdps'][key]['name'] + req = hug.test.put(update, "/update/pdp/{}".format(key), + pdps['pdps'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_update_pdp_not_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + + pdps = response.json() + key = next(iter(pdps['pdps'])) + pdps['pdps'][key]['name'] = "new " + pdps['pdps'][key]['name'] + req = hug.test.put(update, "/update/pdp/{}".format(uuid4().hex), + pdps['pdps'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_delete_pdp_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + + pdps = response.json() + key = next(iter(pdps['pdps'])) + req = hug.test.delete(update, "/update/pdp/{}".format(key), headers=auth_headers) + assert req.status == hug.HTTP_202 + + +def test_pipeline_update_perimeter_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + policy_key = next(iter(policies['policies'])) + + subject_response = requests.get("{}/policies/{}/subjects".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + subjects = subject_response.json() + subj_key = next(iter(subjects['subjects'])) + subjects['subjects'][subj_key]['name'] = "updated_" + subjects['subjects'][subj_key]['name'] + + subject_req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(subj_key, policy_key, + "subject"), + subjects['subjects'][subj_key], headers=auth_headers) + assert subject_req.status == hug.HTTP_208 + + """ object category """ + object_response = requests.get("{}/policies/{}/objects".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + objects = object_response.json() + obj_key = next(iter(objects['objects'])) + objects['objects'][obj_key]['name'] = "updated_" + objects['objects'][obj_key]['name'] + + object_req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(obj_key, policy_key, "object") + , objects['objects'][obj_key], headers=auth_headers) + assert object_req.status == hug.HTTP_208 + + """ action category """ + action_response = requests.get("{}/policies/{}/actions".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + actions = action_response.json() + action_key = next(iter(actions['actions'])) + actions['actions'][action_key]['name'] = "updated_" + actions['actions'][action_key]['name'] + + action_req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(action_key, policy_key, + "action"), + actions['actions'][action_key], headers=auth_headers) + assert action_req.status == hug.HTTP_208 + + +def test_pipeline_update_perimeter_not_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + policy_key = next(iter(policies['policies'])) + + subject_response = requests.get("{}/policies/{}/subjects".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + subjects = subject_response.json() + subj_key = next(iter(subjects['subjects'])) + subjects['subjects'][subj_key]['name'] = "updated_" + subjects['subjects'][subj_key]['name'] + + subject_req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(uuid4().hex, policy_key, + "subject"), + subjects['subjects'][subj_key], headers=auth_headers) + assert subject_req.status == hug.HTTP_208 + + """ object category """ + object_response = requests.get("{}/policies/{}/objects".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + objects = object_response.json() + obj_key = next(iter(objects['objects'])) + objects['objects'][obj_key]['name'] = "updated_" + objects['objects'][obj_key]['name'] + + object_req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(uuid4().hex, policy_key, "object") + , objects['objects'][obj_key], headers=auth_headers) + assert object_req.status == hug.HTTP_208 + + """ action category """ + action_response = requests.get("{}/policies/{}/actions".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + actions = action_response.json() + action_key = next(iter(actions['actions'])) + actions['actions'][action_key]['name'] = "updated_" + actions['actions'][action_key]['name'] + + action_req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(uuid4().hex, policy_key, + "action"), + actions['actions'][action_key], headers=auth_headers) + assert action_req.status == hug.HTTP_208 + + +def test_pipeline_delete_perimeter_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + policies_response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = policies_response.json() + policy_key = next(iter(policies['policies'])) + + subject_response = requests.get("{}/policies/{}/subjects".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + subjects = subject_response.json() + subj_key = next(iter(subjects['subjects'])) + subjects['subjects'][subj_key]['name'] = "updated_" + subjects['subjects'][subj_key]['name'] + + delete_subject_response = hug.test.delete(update, "/update/perimeter/{}/{}/{}".format(subj_key, policy_key, + "subject"), + headers=auth_headers) + assert delete_subject_response.status == hug.HTTP_202 + + object_response = requests.get("{}/policies/{}/objects".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + objects = object_response.json() + assert 'objects' in objects and len(objects['objects']) + + for key in objects['objects']: + delete_object_response = hug.test.delete(update, "/update/perimeter/{}/{}/{}".format(key, policy_key, 'object'), + headers=auth_headers) + assert delete_object_response.status == hug.HTTP_202 + + action_response = requests.get("{}/policies/{}/actions".format(get_configuration( + "management").get("url"), policy_key), headers=auth_headers) + actions = action_response.json() + assert 'actions' in actions and len(actions['actions']) + + for key in actions['actions']: + delete_action_response = hug.test.delete(update, "/update/perimeter/{}/{}/{}".format(key, policy_key, 'action'), + headers=auth_headers) + assert delete_action_response.status == hug.HTTP_202 + + +def test_pipeline_delete_assignments(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + policies = response.json() + policy_id = next(iter(policies['policies'])) + + sub_assig_response = requests.get("{}/policies/{}/subject_assignments".format(get_configuration("management").get("url"), + policy_id), headers=auth_headers) + + subject_assignments = sub_assig_response.json() + assert 'subject_assignments' in subject_assignments and len( + subject_assignments['subject_assignments']) + req = hug.test.delete(update, + "/update/assignment/{}/{}/".format(policy_id, "subject"), + headers=auth_headers) + assert req.status == hug.HTTP_202 + + obj_assig_response = requests.get("{}/policies/{}/object_assignments".format(get_configuration( + "management").get("url"), policy_id), + headers=auth_headers) + object_assignments = obj_assig_response.json() + assert 'object_assignments' in object_assignments and len( + object_assignments['object_assignments']) + req = hug.test.delete(update, + "/update/assignment/{}/{}/".format(policy_id, "object"), + headers=auth_headers) + assert req.status == hug.HTTP_202 + + action_assig_response = requests.get("{}/policies/{}/action_assignments".format(get_configuration( + "management").get("url"), policy_id), + headers=auth_headers) + action_assignments = action_assig_response.json() + assert 'action_assignments' in action_assignments and len( + action_assignments['action_assignments']) + req = hug.test.delete(update, + "/update/assignment/{}/{}/".format(policy_id, "action"), + headers=auth_headers) + assert req.status == hug.HTTP_202 + + +def test_pipeline_delete_rule(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + policy_response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + policies = policy_response.json() + policy_id = next(iter(policies['policies'])) + + rules_response = requests.get( + "{}/policies/{}/rules".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + rules = rules_response.json() + + assert len(rules['rules']['rules']) + for i in range(0, len(rules['rules']['rules'])): + req = hug.test.delete(update, "/update/rule/{}/{}".format(policy_id, rules['rules'][ + 'rules'][i]['id']), headers=auth_headers) + assert req.status == hug.HTTP_202 + + +def test_pipeline_update_model_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + model_response = requests.get("{}/models".format(get_configuration("management").get("url")), + headers=auth_headers) + + models = model_response.json() + key = next(iter(models['models'])) + models['models'][key]['name'] = "new " + models['models'][key]['name'] + req = hug.test.put(update, "/update/model/{}".format(key), + models['models'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_update_model_not_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + model_response = requests.get("{}/models".format(get_configuration("management").get("url")), + headers=auth_headers) + + models = model_response.json() + key = next(iter(models['models'])) + models['models'][key]['name'] = "new " + models['models'][key]['name'] + req = hug.test.put(update, "/update/model/{}".format(uuid4().hex), + models['models'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_delete_model_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + model_response = requests.get("{}/models".format(get_configuration("management").get("url")), + headers=auth_headers) + + models = model_response.json() + key = next(iter(models['models'])) + req = hug.test.delete(update, "/update/model/{}".format(key), headers=auth_headers) + assert req.status == hug.HTTP_202 + + +def test_pipeline_delete_category(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + subject_cat_response = requests.get("{}/subject_categories".format(get_configuration( + "management").get("url")), headers=auth_headers) + subject_categories = subject_cat_response.json() + category_id = next(iter(subject_categories['subject_categories'])) + req = hug.test.delete(update, "/update/meta_data/{}/{}".format(category_id, 'subject'), + headers=auth_headers) + assert req.status == hug.HTTP_202 + + action_cat_response = requests.get("{}/action_categories".format(get_configuration( + "management").get("url")), + headers=auth_headers) + action_categories = action_cat_response.json() + category_id = next(iter(action_categories['action_categories'])) + req = hug.test.delete(update, "/update/meta_data/{}/{}".format(category_id, 'action'), + headers=auth_headers) + assert req.status == hug.HTTP_202 + + obj_cat_response = requests.get("{}/object_categories".format(get_configuration( + "management").get("url")), + headers=auth_headers) + object_categories = obj_cat_response.json() + category_id = next(iter(object_categories['object_categories'])) + req = hug.test.delete(update, "/update/meta_data/{}/{}".format(category_id, 'object'), + headers=auth_headers) + assert req.status == hug.HTTP_202 + + +def test_pipeline_update_meta_rule_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + meta_rules_response = requests.get("{}/meta_rules".format(get_configuration("management").get("url")), + headers=auth_headers) + + meta_rules = meta_rules_response.json() + key = next(iter(meta_rules['meta_rules'])) + meta_rules['meta_rules'][key]['name'] = "new " + meta_rules['meta_rules'][key]['name'] + req = hug.test.put(update, "/update/meta_rule/{}".format(key), + meta_rules['meta_rules'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_update_meta_rule_not_existed(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + meta_rules_response = requests.get("{}/meta_rules".format(get_configuration("management").get("url")), + headers=auth_headers) + + meta_rules = meta_rules_response.json() + key = next(iter(meta_rules['meta_rules'])) + meta_rules['meta_rules'][key]['name'] = "new " + meta_rules['meta_rules'][key]['name'] + req = hug.test.put(update, "/update/meta_rule/{}".format(uuid4().hex), + meta_rules['meta_rules'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_pipeline_delete_meta_rule(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + meta_rules_response = requests.get("{}/meta_rules".format(get_configuration("management").get("url")), + headers=auth_headers) + + meta_rules = meta_rules_response.json() + key = next(iter(meta_rules['meta_rules'])) + req = hug.test.delete(update, "/update/meta_rule/{}".format(key), headers=auth_headers) + assert req.status == hug.HTTP_202 + + +def test_pipeline_delete_data(): + from moon_engine.api.pipeline import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_engine.api.configuration import get_configuration + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + policies_response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = policies_response.json() + policy_id = next(iter(policies['policies'])) + + subject_data_response = requests.get( + "{}/policies/{}/subject_data".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + subject_data_id = next(iter(subject_data_response.json()['subject_data'][0]['data'])) + delete_subject_data_response = hug.test.delete(update, "/update/data/{}/{}".format(subject_data_id, 'subject'), + headers=auth_headers) + assert delete_subject_data_response.status == hug.HTTP_202 + + object_data_response = requests.get( + "{}/policies/{}/object_data".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + object_data_id = next(iter(object_data_response.json()['object_data'][0]['data'])) + delete_object_data_response = hug.test.delete(update, "/update/data/{}/{}".format(object_data_id, 'object'), + headers=auth_headers) + assert delete_object_data_response.status == hug.HTTP_202 + + action_data_response = requests.get( + "{}/policies/{}/action_data".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + action_data_id = next(iter(action_data_response.json()['action_data'][0]['data'])) + delete_action_data_response = hug.test.delete(update, "/update/data/{}/{}".format(action_data_id, 'action'), + headers=auth_headers) + assert delete_action_data_response.status == hug.HTTP_202 + + +# def test_pipeline_delete_attributes(): +# from moon_engine.api.pipeline import update +# from moon_utilities.auth_functions import get_api_key_for_user +# from moon_engine.api.configuration import get_configuration +# +# auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} +# +# attributes_response = requests.get( +# "{}/attributes".format(get_configuration("management").get("url")), +# headers=auth_headers) +# +# attributes = attributes_response.json() +# key = next(iter(attributes['attributes'])) +# req = hug.test.delete(update, "/update/attributes/{}".format(key), headers=auth_headers) +# assert req.status == hug.HTTP_202 + + diff --git a/moon_engine/tests/unit_python/api/test_status.py b/moon_engine/tests/unit_python/api/test_status.py new file mode 100644 index 00000000..e38f35e6 --- /dev/null +++ b/moon_engine/tests/unit_python/api/test_status.py @@ -0,0 +1,21 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import hug + + +def test_status(benchmark): + from moon_engine.api import status + + # Fixme: Add tests on enforce function to have a benchmark on enforce rapidity + req = benchmark(hug.test.get, status, "/status") + assert isinstance(req.data, dict) diff --git a/moon_engine/tests/unit_python/api/wrapper/__init__.py b/moon_engine/tests/unit_python/api/wrapper/__init__.py new file mode 100644 index 00000000..582be686 --- /dev/null +++ b/moon_engine/tests/unit_python/api/wrapper/__init__.py @@ -0,0 +1,11 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + diff --git a/moon_engine/tests/unit_python/api/wrapper/test_oslo_wrapper.py b/moon_engine/tests/unit_python/api/wrapper/test_oslo_wrapper.py new file mode 100644 index 00000000..770e9bb6 --- /dev/null +++ b/moon_engine/tests/unit_python/api/wrapper/test_oslo_wrapper.py @@ -0,0 +1,209 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import hug +import json +import requests + + +def get_subject_object_action(): + from moon_engine.api.configuration import get_configuration + from moon_cache.cache import Cache + from moon_utilities.auth_functions import get_api_key_for_user + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), + api_key=get_api_key_for_user("admin")) + + # Note: patching the cache for the test + CACHE.add_pipeline("b3d3e18a-bf33-40e8-b635-fd49e6634ccd", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + CACHE.add_pipeline("f8f49a77-9ceb-47b3-ac81-0f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + pdp = response.json() + pdp_id = next(iter(pdp['pdps'])) + policy_id = pdp['pdps'][pdp_id].get("security_pipeline")[0] + project_id = pdp['pdps'][pdp_id].get("vim_project_id") + + # response = requests.get("{}/policies".format(get_configuration("management").get("url")), + # headers=auth_headers) + # policies = response.json() + # policy_id = next(iter(policies['policies'])) + + response = requests.get("{}/policies/{}/subjects".format( + get_configuration("management").get("url"), policy_id), headers=auth_headers) + subjects = response.json() + + response = requests.get("{}/policies/{}/objects".format( + get_configuration("management").get("url"), policy_id), headers=auth_headers) + objects = response.json() + + response = requests.get("{}/policies/{}/actions".format( + get_configuration("management").get("url"), policy_id), headers=auth_headers) + actions = response.json() + return subjects, objects, actions, project_id + + +def test_post_authz(): + from moon_engine.plugins import oslowrapper + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + pdp = response.json() + pdp_id = next(iter(pdp['pdps'])) + policy_id = pdp['pdps'][pdp_id].get("security_pipeline")[0] + project_id = pdp['pdps'][pdp_id].get("vim_project_id") + + response = requests.get("{}/policies/{}/subjects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + subjects = response.json() + + response = requests.get("{}/policies/{}/objects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + objects = response.json() + + response = requests.get("{}/policies/{}/actions".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + actions = response.json() + + subjects_name = subjects['subjects'][next(iter(subjects['subjects']))]['name'] + objects_name = objects['objects'][next(iter(objects['objects']))]['name'] + actions_name = actions['actions'][next(iter(actions['actions']))]['name'] + + # Note: patching the cache for the test + from moon_cache.cache import Cache + CACHE = Cache.getInstance() + CACHE.add_pipeline("b3d3e18abf3340e8b635fd49e6634ccd", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + CACHE.add_pipeline("f8f49a779ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + + _target = { + 'target': { + "name": objects_name, + }, + "project_id": project_id, + "user_id": subjects_name + } + _credentials = { + "project_id": project_id, + "user_id": subjects_name + } + + authz_data = { + 'rule': actions_name, + 'target': json.dumps(_target), + 'credentials': json.dumps(_credentials)} + req = hug.test.post(oslowrapper, "/authz/oslo", authz_data) + assert req.status == hug.HTTP_200 + + +def test_authz_true(): + from moon_engine.plugins import oslowrapper + + subjects, objects, actions, project_id = get_subject_object_action() + + _target = { + 'target': { + "name": objects['objects'][next(iter(objects['objects']))]['name'], + }, + "project_id": project_id, + "user_id": subjects['subjects'][next(iter(subjects['subjects']))]['name'] + } + _credentials = { + "project_id": project_id, + "user_id": subjects['subjects'][next(iter(subjects['subjects']))]['name'] + } + authz_data = { + 'rule': actions['actions'][next(iter(actions['actions']))]['name'], + 'target': json.dumps(_target), + 'credentials': json.dumps(_credentials)} + + req = hug.test.post(oslowrapper, "/authz/oslo", body=authz_data) + + assert req.status == hug.HTTP_200 and req.data is not None and req.data + + +def test_authz_error_response_code(): + from moon_engine.plugins import oslowrapper + + subjects, objects, actions, project_id = get_subject_object_action() + + _target = { + 'target': { + "name": objects['objects'][next(iter(objects['objects']))]['name'], + }, + "project_id": "a64beb1cc224474fb4badd431f3e7106", # invalid project id + "user_id": subjects['subjects'][next(iter(subjects['subjects']))]['name'] + } + authz_data = { + 'rule': actions['actions'][next(iter(actions['actions']))]['name'], + 'target': json.dumps(_target), + 'credentials': 'null'} + + print(authz_data) + req = hug.test.post(oslowrapper, "/authz/oslo", body=authz_data) + + assert req.status != hug.HTTP_200 + +# def test_authz_error_no_interface_key(context): +# import moon_wrapper.server +# server = moon_wrapper.server.main() +# client = server.app.test_client() +# _target = { +# 'target': { +# "name": context.get('object_name'), +# }, +# "project_id": context.get('project_with_no_interface_key'), +# "user_id": context.get('subject_name') +# } +# authz_data = { +# 'rule': context.get('action_name'), +# 'target': json.dumps(_target), +# 'credentials': 'null'} +# req = client.post("/authz/oslo", data=json.dumps(authz_data)) +# +# assert req.data == b"False" diff --git a/moon_engine/tests/unit_python/api/wrapper/test_pipeline.py b/moon_engine/tests/unit_python/api/wrapper/test_pipeline.py new file mode 100644 index 00000000..ed16883d --- /dev/null +++ b/moon_engine/tests/unit_python/api/wrapper/test_pipeline.py @@ -0,0 +1,32 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import hug + + +def test_get_pipelines(): + from moon_engine.api.wrapper.api import pipeline + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + req = hug.test.get(pipeline, "/pipelines", headers=auth_headers ) + assert req.status == hug.HTTP_200 + assert isinstance(req.data, dict) + assert "pipelines" in req.data diff --git a/moon_engine/tests/unit_python/api/wrapper/test_update.py b/moon_engine/tests/unit_python/api/wrapper/test_update.py new file mode 100644 index 00000000..75e7ef2d --- /dev/null +++ b/moon_engine/tests/unit_python/api/wrapper/test_update.py @@ -0,0 +1,602 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import hug +import requests + + +def test_wrapper_update_policy_existed(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), + api_key=get_api_key_for_user("admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + key = next(iter(policies['policies'])) + policies['policies'][key]['name'] = "new " + policies['policies'][key]['name'] + req = hug.test.put(update, "/update/policy/{}".format(key), + policies['policies'][key], headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_policy(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), + api_key=get_api_key_for_user("admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + policies = response.json() + key = next(iter(policies['policies'])) + req = hug.test.delete(update, "/update/policy/{}".format(key), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_update_policy_not_existed(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), + api_key=get_api_key_for_user("admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + policies = response.json() + key = next(iter(policies['policies'])) + policies['policies'][key]['name'] = "new " + policies['policies'][key]['name'] + req = hug.test.put(update, "/update/policy/{}".format("eac0ecd09ceb47b3ac810f01ef71b4e0"), + policies['policies'][key], headers=auth_headers) + assert req.status == hug.HTTP_208 + + +def test_wrapper_update_pdp_existed(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + + pdps = response.json() + key = next(iter(pdps['pdps'])) + pdps['pdps'][key]['name'] = "new " + pdps['pdps'][key]['name'] + req = hug.test.put(update, "/update/pdp/{}".format(key), + pdps['pdps'][key], headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_pdp(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + + pdps = response.json() + key = next(iter(pdps['pdps'])) + req = hug.test.delete(update, "/update/pdp/{}".format(key), headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_assignments(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + policies = response.json() + policy_id = next(iter(policies['policies'])) + + response = requests.get("{}/policies/{}/subject_assignments".format(get_configuration( + "management").get("url"), policy_id), + headers=auth_headers) + subject_assignments = response.json() + assert 'subject_assignments' in subject_assignments and len( + subject_assignments['subject_assignments']) + req = hug.test.delete(update, + "/update/assignment/{}/{}/".format(policy_id, "subject"), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/policies/{}/object_assignments".format(get_configuration( + "management").get("url"), policy_id), + headers=auth_headers) + object_assignments = response.json() + assert 'object_assignments' in object_assignments and len( + object_assignments['object_assignments']) + req = hug.test.delete(update, + "/update/assignment/{}/{}/".format(policy_id, "object"), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/policies/{}/action_assignments".format(get_configuration( + "management").get("url"), policy_id), + headers=auth_headers) + action_assignments = response.json() + assert 'action_assignments' in action_assignments and len( + action_assignments['action_assignments']) + req = hug.test.delete(update, + "/update/assignment/{}/{}/".format(policy_id, "action"), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_update_perimeter_existed(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + policy_id = next(iter(policies['policies'])) + + response = requests.get("{}/policies/{}/subjects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + subjects = response.json() + assert 'subjects' in subjects and len(subjects['subjects']) + + for key in subjects['subjects']: + subjects['subjects'][key]['name'] = "new " + subjects['subjects'][key]['name'] + req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(key, policy_id, 'subject'), + subjects['subjects'][key], headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/policies/{}/objects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + objects = response.json() + assert 'objects' in objects and len(objects['objects']) + + for key in objects['objects']: + objects['objects'][key]['name'] = "new " + objects['objects'][key]['name'] + req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(key, policy_id, 'object'), + objects['objects'][key], headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/policies/{}/actions".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + actions = response.json() + assert 'actions' in actions and len(actions['actions']) + + for key in actions['actions']: + actions['actions'][key]['name'] = "new " + actions['actions'][key]['name'] + req = hug.test.put(update, "/update/perimeter/{}/{}/{}".format(key, policy_id, 'action'), + actions['actions'][key], headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_perimeter(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), + api_key=get_api_key_for_user("admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + policy_id = next(iter(policies['policies'])) + + response = requests.get("{}/policies/{}/subjects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + subjects = response.json() + assert 'subjects' in subjects and len(subjects['subjects']) + + for key in subjects['subjects']: + req = hug.test.delete(update, + "/update/perimeter/{}/{}/{}".format(key, policy_id, 'subject'), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/policies/{}/objects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + objects = response.json() + assert 'objects' in objects and len(objects['objects']) + + for key in objects['objects']: + req = hug.test.delete(update, "/update/perimeter/{}/{}/{}".format(key, policy_id, 'object'), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/policies/{}/actions".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + actions = response.json() + assert 'actions' in actions and len(actions['actions']) + + for key in actions['actions']: + req = hug.test.delete(update, "/update/perimeter/{}/{}/{}".format(key, policy_id, 'action'), + headers=auth_headers) + + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_rule(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + policies = response.json() + policy_id = next(iter(policies['policies'])) + + response = requests.get( + "{}/policies/{}/rules".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + rules = response.json() + assert 'rules' in rules and 'policy_id' in rules['rules'] + assert rules['rules']['policy_id'] == policy_id + assert len(rules['rules']['rules']) + for i in range(0, len(rules['rules']['rules'])): + req = hug.test.delete(update, "/update/rule/{}/{}".format(policy_id, + rules['rules']['rules'][i]['id']), headers=auth_headers) + + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_update_model_existed(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/models".format(get_configuration("management").get("url")), + headers=auth_headers) + + models = response.json() + key = next(iter(models['models'])) + models['models'][key]['name'] = "new " + models['models'][key]['name'] + req = hug.test.put(update, "/update/model/{}".format(key), + models['models'][key], headers=auth_headers) + + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_model(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/models".format(get_configuration("management").get("url")), + headers=auth_headers) + + models = response.json() + key = next(iter(models['models'])) + req = hug.test.delete(update, "/update/model/{}".format(key), headers=auth_headers) + + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_category(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/subject_categories".format(get_configuration("management").get("url")), + headers=auth_headers) + subject_categories = response.json() + category_id = next(iter(subject_categories['subject_categories'])) + req = hug.test.delete(update, "/update/meta_data/{}/{}".format(category_id, 'subject'), + headers=auth_headers) + + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/action_categories".format(get_configuration("management").get("url")), + headers=auth_headers) + action_categories = response.json() + category_id = next(iter(action_categories['action_categories'])) + req = hug.test.delete(update, "/update/meta_data/{}/{}".format(category_id, 'action'), + headers=auth_headers) + + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get("{}/object_categories".format(get_configuration("management").get("url")), + headers=auth_headers) + object_categories = response.json() + category_id = next(iter(object_categories['object_categories'])) + req = hug.test.delete(update, "/update/meta_data/{}/{}".format(category_id, 'object'), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_update_meta_rule_existed(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/meta_rules".format(get_configuration("management").get("url")), + headers=auth_headers) + + meta_rules = response.json() + key = next(iter(meta_rules['meta_rules'])) + meta_rules['meta_rules'][key]['name'] = "new " + meta_rules['meta_rules'][key]['name'] + req = hug.test.put(update, "/update/meta_rule/{}".format(key), + meta_rules['meta_rules'][key], headers=auth_headers) + + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_meta_rule(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/meta_rules".format(get_configuration("management").get("url")), + headers=auth_headers) + + meta_rules = response.json() + key = next(iter(meta_rules['meta_rules'])) + req = hug.test.delete(update, "/update/meta_rule/{}".format(key), headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + +def test_wrapper_delete_data(): + from moon_engine.api.wrapper.api import update + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), api_key=get_api_key_for_user( + "admin")) + + CACHE.add_pipeline("eac0ecd09ceb47b3ac810f01ef71b4e0", { + "name": "test", + "description": "test", + "host": "127.0.0.1", + "port": 20000, + }) + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/policies".format(get_configuration("management").get("url")), + headers=auth_headers) + + policies = response.json() + policy_id = next(iter(policies['policies'])) + + response = requests.get( + "{}/policies/{}/subject_data".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + subject_data_id = next(iter(response.json()['subject_data'][0]['data'])) + req = hug.test.delete(update, "/update/data/{}/{}".format(subject_data_id,'subject'), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get( + "{}/policies/{}/object_data".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + object_data_id = next(iter(response.json()['object_data'][0]['data'])) + req = hug.test.delete(update, "/update/data/{}/{}".format(object_data_id, 'object'), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) + + response = requests.get( + "{}/policies/{}/action_data".format(get_configuration("management").get("url"), policy_id), + headers=auth_headers) + action_data_id = next(iter(response.json()['action_data'][0]['data'])) + req = hug.test.delete(update, "/update/data/{}/{}".format(action_data_id, 'action'), + headers=auth_headers) + assert (req.status == hug.HTTP_202 or req.status == hug.HTTP_200) diff --git a/moon_engine/tests/unit_python/api/wrapper/test_wrapper_authz.py b/moon_engine/tests/unit_python/api/wrapper/test_wrapper_authz.py new file mode 100644 index 00000000..c4df249f --- /dev/null +++ b/moon_engine/tests/unit_python/api/wrapper/test_wrapper_authz.py @@ -0,0 +1,57 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import hug +import requests + + +def test_wrapper_get_authz(): + from moon_engine.api.wrapper.api import authz + from moon_utilities.auth_functions import get_api_key_for_user + from moon_cache.cache import Cache + from moon_engine.api.configuration import get_configuration + CACHE = Cache.getInstance(manager_url=get_configuration("management").get("url"), + incremental=get_configuration("incremental_updates"), + manager_api_key=get_configuration("api_token")) + + CACHE.set_current_server(url=get_configuration("management").get("url"), + api_key=get_api_key_for_user("admin")) + + auth_headers = {"X-Api-Key": get_api_key_for_user("admin")} + + response = requests.get("{}/pdp".format(get_configuration("management").get("url")), + headers=auth_headers) + + pdp = response.json() + pdp_id = next(iter(pdp['pdps'])) + policy_id = pdp['pdps'][pdp_id].get("security_pipeline")[0] + project_id = pdp['pdps'][pdp_id].get("vim_project_id") + + response = requests.get("{}/policies/{}/subjects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + subjects = response.json() + + response = requests.get("{}/policies/{}/objects".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + objects = response.json() + + response = requests.get("{}/policies/{}/actions".format(get_configuration( + "management").get("url"), policy_id), headers=auth_headers) + actions = response.json() + + subjects_name = subjects['subjects'][next(iter(subjects['subjects']))]['name'] + objects_name = objects['objects'][next(iter(objects['objects']))]['name'] + actions_name = actions['actions'][next(iter(actions['actions']))]['name'] + + req = hug.test.get(authz, "/authz/{}/{}/{}/{}".format( + project_id, subjects_name, objects_name, actions_name)) + assert req.status == hug.HTTP_200 diff --git a/moon_engine/tests/unit_python/conftest.py b/moon_engine/tests/unit_python/conftest.py new file mode 100644 index 00000000..6b7ab339 --- /dev/null +++ b/moon_engine/tests/unit_python/conftest.py @@ -0,0 +1,60 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + +import os +import pytest +import requests_mock +import mock_require_data + + +@pytest.fixture(autouse=True) +def no_requests(monkeypatch): + """ Modify the response from Requests module + """ + global manager_api_key + with requests_mock.Mocker(real_http=True) as m: + try: + os.remove("/tmp/database_test.db") + except FileNotFoundError: + pass + try: + os.remove("/tmp/moon.pwd") + except FileNotFoundError: + pass + print("Configure...") + mock_require_data.register_require_data(m) + #from moon_engine.api.configuration import set_configuration + #set_configuration(yaml.safe_load(__CONF)) + print("Create a new user") + from moon_utilities.auth_functions import add_user, init_db, get_api_key_for_user + init_db("/tmp/moon.pwd") + try: + user = add_user("admin", "admin") + manager_api_key = user["api_key"] + except KeyError: + print("User already exists") + manager_api_key = get_api_key_for_user("admin") + print("Initialize the database") + # init_database() + # from moon_manager import db_driver + # db_driver.init() + + # mock_engine.register_engine(m) + # mock_slaves.register_slaves(m) + + # from moon_manager.pip_driver import InformationManager + # InformationManager.set_auth() + + from moon_cache.cache import Cache + Cache.deleteInstance() + yield m + # InformationManager.unset_auth() diff --git a/moon_engine/tests/unit_python/mock_require_data.py b/moon_engine/tests/unit_python/mock_require_data.py new file mode 100644 index 00000000..63557285 --- /dev/null +++ b/moon_engine/tests/unit_python/mock_require_data.py @@ -0,0 +1,762 @@ +# Software Name: MOON + +# Version: 5.4 + +# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors +# SPDX-License-Identifier: Apache-2.0 + +# This software is distributed under the 'Apache License 2.0', +# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt' +# or see the "LICENSE" file for more details. + + + +def register_require_data(m): + m.register_uri( + 'GET', 'http://127.0.0.1:20000/authz/testuser/vm1/boot', + json={}, + status_code=204 + ) + m.register_uri( + 'GET', 'http://127.0.0.1:10000/authz/a64beb1cc224474fb4badd43173e7101/testuser/vm1/boot', + json={}, + status_code=204 + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/pdp', + json={ + "pdps": { + "b3d3e18abf3340e8b635fd49e6634ccd": { + "description": "test", + "security_pipeline": [ + "f8f49a779ceb47b3ac810f01ef71b4e0" + ], + "name": "pdp_rbac", + "vim_project_id": "a64beb1cc224474fb4badd43173e7101" + }, + "eac0ecd09ceb47b3ac810f01ef71b4e0": { + "description": "test", + "security_pipeline": [ + "f8f49a779ceb47b3ac810f01ef71b4e0" + ], + "name": "pdp_rbac2", + "vim_project_id": "z64beb1cc224474fb4badd43173e7108" + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/pdp/b3d3e18abf3340e8b635fd49e6634ccd', + json={ + "pdps": { + "b3d3e18abf3340e8b635fd49e6634ccd": { + "description": "test", + "security_pipeline": [ + "f8f49a779ceb47b3ac810f01ef71b4e0" + ], + "name": "pdp_rbac", + "vim_project_id": "a64beb1cc224474fb4badd43173e7101" + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/pdp/eac0ecd09ceb47b3ac810f01ef71b4e0', + json={ + "pdps": { + "eac0ecd09ceb47b3ac810f01ef71b4e0": { + "description": "test", + "security_pipeline": [ + "f8f49a779ceb47b3ac810f01ef71b4e0" + ], + "name": "pdp_rbac", + "vim_project_id": "z64beb1cc224474fb4badd43173e7108" + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies', + json={ + "policies": { + "f8f49a779ceb47b3ac810f01ef71b4e0": { + "name": "RBAC policy example", + "model_id": "cd923d8633ff4978ab0e99938f5153d6", + "description": "test", + "genre": "authz" + } + } + } + ) + + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0', + json={ + "f8f49a779ceb47b3ac810f01ef71b4e0": { + "name": "RBAC policy example", + "model_id": "cd923d8633ff4978ab0e99938f5153d6", + "description": "test", + "genre": "authz" + } + } + ) + + m.register_uri( + 'GET', 'http://127.0.0.1:8000/models', + json={ + "models": { + "cd923d8633ff4978ab0e99938f5153d6": { + "name": "RBAC", + "meta_rules": [ + "4700cc0e38ef4cffa34025602d267c9e" + ], + "description": "test" + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/meta_rules', + json={ + "meta_rules": { + "4700cc0e38ef4cffa34025602d267c9e": { + "subject_categories": [ + "14e6ae0ba34d458b876c791b73aa17bd" + ], + "action_categories": [ + "241a2a791554421a91c9f1bc564aa94d" + ], + "description": "", + "name": "rbac", + "object_categories": [ + "6d48500f639d4c2cab2b1f33ef93a1e8" + ] + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/subject_categories', + json={ + 'subject_categories': + { + '14e6ae0ba34d458b876c791b73aa17bd': + { + 'id': '14e6ae0ba34d458b876c791b73aa17bd', + 'name': 'testuser14e6ae0ba34d458b876c791b73aa17bd', + 'description': 'description of testuser14e6ae0ba34d458b876c791b73aa17bd' + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/action_categories', + json={ + 'action_categories': + { + '241a2a791554421a91c9f1bc564aa94d': + { + 'id': '241a2a791554421a91c9f1bc564aa94d', + 'name': 'testuser241a2a791554421a91c9f1bc564aa94d', + 'description': 'description of testuser241a2a791554421a91c9f1bc564aa94d' + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/object_categories', + json={ + 'object_categories': + { + '6d48500f639d4c2cab2b1f33ef93a1e8': + { + 'id': '6d48500f639d4c2cab2b1f33ef93a1e8', + 'name': '6d48500f639d4c2cab2b1f33ef93a1e8', + 'description': 'description of testuser6d48500f639d4c2cab2b1f33ef93a1e8' + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/subjects', + json={ + "subjects": { + "89ba91c18dd54abfbfde7a66936c51a6": { + "description": "test", + "policy_list": [ + "f8f49a779ceb47b3ac810f01ef71b4e0", + "636cd473324f4c0bbd9102cb5b62a16d" + ], + "name": "testuser", + "email": "mail", + "id": "89ba91c18dd54abfbfde7a66936c51a6", + "extra": {} + }, + "31fd15ad14784a9696fcc887dddbfaf9": { + "description": "test", + "policy_list": [ + "f8f49a779ceb47b3ac810f01ef71b4e0", + "636cd473324f4c0bbd9102cb5b62a16d" + ], + "name": "adminuser", + "email": "mail", + "id": "31fd15ad14784a9696fcc887dddbfaf9", + "extra": {} + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/objects', + json={ + "objects": { + "67b8008a3f8d4f8e847eb628f0f7ca0e": { + "name": "vm1", + "description": "test", + "id": "67b8008a3f8d4f8e847eb628f0f7ca0e", + "extra": {}, + "policy_list": [ + "f8f49a779ceb47b3ac810f01ef71b4e0", + "636cd473324f4c0bbd9102cb5b62a16d" + ] + }, + "9089b3d2ce5b4e929ffc7e35b55eba1a": { + "name": "vm0", + "description": "test", + "id": "9089b3d2ce5b4e929ffc7e35b55eba1a", + "extra": {}, + "policy_list": [ + "f8f49a779ceb47b3ac810f01ef71b4e0", + "636cd473324f4c0bbd9102cb5b62a16d" + ] + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/actions', + json={ + "actions": { + "cdb3df220dc05a6ea3334b994827b068": { + "name": "boot", + "description": "test", + "id": "cdb3df220dc05a6ea3334b994827b068", + "extra": {}, + "policy_list": [ + "f8f49a779ceb47b3ac810f01ef71b4e0", + "636cd473324f4c0bbd9102cb5b62a16d" + ] + }, + "9f5112afe9b34a6c894eb87246ccb7aa": { + "name": "start", + "description": "test", + "id": "9f5112afe9b34a6c894eb87246ccb7aa", + "extra": {}, + "policy_list": [ + "f8f49a779ceb47b3ac810f01ef71b4e0", + "636cd473324f4c0bbd9102cb5b62a16d" + ] + } + } + } + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/subject_assignments', + json={ + "subject_assignments": { + "826c1156d0284fc9b4b2ddb279f63c52": { + "category_id": "14e6ae0ba34d458b876c791b73aa17bd", + "assignments": [ + "24ea95256c5f4c888c1bb30a187788df", + "6b227b77184c48b6a5e2f3ed1de0c02a", + "31928b17ec90438ba5a2e50ae7650e63", + "4e60f554dd3147af87595fb6b37dcb13", + "7a5541b63a024fa88170a6b59f99ccd7", + "dd2af27812f742029d289df9687d6126", + "4d4b3c3ba45e48589b382a6e369bafbe", + ], + "id": "826c1156d0284fc9b4b2ddb279f63c52", + "subject_id": "89ba91c18dd54abfbfde7a66936c51a6", + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0" + }, + "7407ffc1232944279b0cbcb0847c86f7": { + "category_id": "315072d40d774c43a89ff33937ed24eb", + "assignments": [ + "6b227b77184c48b6a5e2f3ed1de0c02a", + "31928b17ec90438ba5a2e50ae7650e63", + "7a5541b63a024fa88170a6b59f99ccd7", + "dd2af27812f742029d289df9687d6126", + ], + "id": "7407ffc1232944279b0cbcb0847c86f7", + "subject_id": "89ba91c18dd54abfbfde7a66936c51a6", + "policy_id": "3e65256389b448cb9897917ea235f0bb" + } + } + } + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/object_assignments', + json={ + "object_assignments": { + "201ad05fd3f940948b769ab9214fe295": { + "object_id": "9089b3d2ce5b4e929ffc7e35b55eba1a", + "assignments": [ + "030fbb34002e4236a7b74eeb5fd71e35", + "4b7793dbae434c31a77da9d92de9fa8c", + '11209d83b167438cb8ab3e5d5351329e', + ], + "id": "201ad05fd3f940948b769ab9214fe295", + "category_id": "33aece52d45b4474a20dc48a76800daf", + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0" + }, + "90c5e86f8be34c0298fbd1973e4fb043": { + "object_id": "67b8008a3f8d4f8e847eb628f0f7ca0e", + "assignments": [ + "7dc76c6142af47c88b60cc2b0df650ba", + "4b7793dbae434c31a77da9d92de9fa8c", + '11209d83b167438cb8ab3e5d5351329e' + ], + "id": "90c5e86f8be34c0298fbd1973e4fb043", + "category_id": "6d48500f639d4c2cab2b1f33ef93a1e8", + "policy_id": "3e65256389b448cb9897917ea235f0bb" + } + } + } + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/action_assignments', + json={ + "action_assignments": { + "2128e3ffbd1c4ef5be515d625745c2d4": { + "category_id": "241a2a791554421a91c9f1bc564aa94d", + "action_id": "cdb3df220dc05a6ea3334b994827b068", + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0", + "id": "2128e3ffbd1c4ef5be515d625745c2d4", + "assignments": [ + "570c036781e540dc9395b83098c40ba7", + "7fe17d7a2e3542719f8349c3f2273182", + "015ca6f40338422ba3f692260377d638", + "23d44c17bf88480f83e8d57d2aa1ea79", + '5ced7ea5e1714f0888d6b4f94c32c29c', + ] + }, + "cffb98852f3a4110af7a0ddfc4e19201": { + "category_id": "4a2c5abaeaf644fcaf3ca8df64000d53", + "action_id": "cdb3df220dc04a6ea3334b994827b068", + "policy_id": "3e65256389b448cb9897917ea235f0bb", + "id": "cffb98852f3a4110af7a0ddfc4e19201", + "assignments": [ + "570c036781e540dc9395b83098c40ba7", + "7fe17d7a2e3542719f8349c3f2273182", + "015ca6f40338422ba3f692260377d638", + "23d44c17bf88480f83e8d57d2aa1ea79" + ] + } + } + } + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/subject_assignments/' + '89ba91c18dd54abfbfde7a66936c51a6', + json={ + "subject_assignments": { + "826c1156d0284fc9b4b2ddb279f63c52": { + "category_id": "14e6ae0ba34d458b876c791b73aa17bd", + "assignments": [ + "24ea95256c5f4c888c1bb30a187788df", + "6b227b77184c48b6a5e2f3ed1de0c02a", + "31928b17ec90438ba5a2e50ae7650e63", + "4e60f554dd3147af87595fb6b37dcb13", + "7a5541b63a024fa88170a6b59f99ccd7", + "4d4b3c3ba45e48589b382a6e369bafbe" + ], + "id": "826c1156d0284fc9b4b2ddb279f63c52", + "subject_id": "89ba91c18dd54abfbfde7a66936c51a6", + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0" + } + } + } + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/object_assignments/' + '67b8008a3f8d4f8e847eb628f0f7ca0e', + json={ + "object_assignments": { + "201ad05fd3f940948b769ab9214fe295": { + "object_id": "67b8008a3f8d4f8e847eb628f0f7ca0e", + "assignments": [ + "030fbb34002e4236a7b74eeb5fd71e35", + "11209d83b167438cb8ab3e5d5351329e" + ], + "id": "201ad05fd3f940948b769ab9214fe295", + "category_id": "6d48500f639d4c2cab2b1f33ef93a1e8", + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0" + } + } + } + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/action_assignments/' + 'cdb3df220dc05a6ea3334b994827b068', + json={ + "action_assignments": { + "2128e3ffbd1c4ef5be515d625745c2d4": { + "category_id": "241a2a791554421a91c9f1bc564aa94d", + "action_id": "cdb3df220dc05a6ea3334b994827b068", + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0", + "id": "2128e3ffbd1c4ef5be515d625745c2d4", + "assignments": [ + "570c036781e540dc9395b83098c40ba7", + "7fe17d7a2e3542719f8349c3f2273182", + "015ca6f40338422ba3f692260377d638", + "f8f49a779ceb47b3ac810f01ef71b4e0" + ] + } + } + } + ) + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/rules', + json={ + "rules": { + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0", + "rules": [ + { + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0", + "rule": [ + "24ea95256c5f4c888c1bb30a187788df", + "030fbb34002e4236a7b74eeb5fd71e35", + "570c036781e540dc9395b83098c40ba7" + ], + "enabled": True, + "id": "0201a2bcf56943c1904dbac016289b71", + "instructions": [ + { + "decision": "grant" + } + ], + "meta_rule_id": "4700cc0e38ef4cffa34025602d267c9e" + }, + { + "policy_id": "f8f49a779ceb47b3ac810f01ef71b4e0", + "rule": [ + "4d4b3c3ba45e48589b382a6e369bafbe", + '11209d83b167438cb8ab3e5d5351329e', + '5ced7ea5e1714f0888d6b4f94c32c29c' + ], + "enabled": True, + "id": "0bd7da3b20bb4b57af10c0e362aac847", + "instructions": [ + { + "decision": "grant" + } + ], + "meta_rule_id": "4700cc0e38ef4cffa34025602d267c9e" + } + ] + } + } + ) + + m.register_uri( + 'GET', 'http://127.0.0.1:8000/pipelines', + json={ + "pipelines": { + 'b3d3e18abf3340e8b635fd49e6634ccd': { + 'starttime': '1548688120.3931532', + "port": '20000', + "server_ip": '127.0.0.1', + "status": 'up', + "log": '/tmp/moon_policy_id_2.log' + } + + } + } + ) + + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/subject_data', + json={ + 'subject_data': [ + { + 'policy_id': 'f8f49a779ceb47b3ac810f01ef71b4e0', + 'category_id': '14e6ae0ba34d458b876c791b73aa17bd', + 'data': { + '4d4b3c3ba45e48589b382a6e369bafbe': { + 'id': '4d4b3c3ba45e48589b382a6e369bafbe', + 'name': 'testuser', + 'description': 'description of testuser', + 'category_id': '14e6ae0ba34d458b876c791b73aa17bd', + 'policy_id': 'f8f49a779ceb47b3ac810f01ef71b4e0' + } + } + }, + ] + } + ) + + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/object_data', + json={ + 'object_data': [ + { + 'policy_id': 'f8f49a779ceb47b3ac810f01ef71b4e0', + 'category_id': '6d48500f639d4c2cab2b1f33ef93a1e8', + 'data': { + '11209d83b167438cb8ab3e5d5351329e': { + 'id': '11209d83b167438cb8ab3e5d5351329e', + 'name': 'testuser', + 'description': 'description of testuser', + 'category_id': '6d48500f639d4c2cab2b1f33ef93a1e8', + 'policy_id': 'f8f49a779ceb47b3ac810f01ef71b4e0' + } + } + }, + ] + } + ) + + m.register_uri( + 'GET', 'http://127.0.0.1:8000/policies/f8f49a779ceb47b3ac810f01ef71b4e0/action_data', + json={ + 'action_data': [ + { + 'policy_id': 'f8f49a779ceb47b3ac810f01ef71b4e0', + 'category_id': '241a2a791554421a91c9f1bc564aa94d', + 'data': { + '5ced7ea5e1714f0888d6b4f94c32c29c': { + 'id': '5ced7ea5e1714f0888d6b4f94c32c29c', + 'name': 'testuser', + 'description': 'description of testuser', + 'category_id': '241a2a791554421a91c9f1bc564aa94d', + 'policy_id': 'f8f49a779ceb47b3ac810f01ef71b4e0' + } + } + } + ] + } + ) + + m.register_uri( + 'GET', 'http://127.0.0.1:8000/slaves', + json={ + "slaves": { + "24aa2a391554421a98c9f1bc564ae94d": { + "name": "slave name", + "address": "http://slave" + } + } + } + ) + + m.register_uri( + 'PUT', 'http://127.0.0.1:20000/update/policy/f8f49a779ceb47b3ac810f01ef71b4e0', + json={} + ) + m.register_uri( + 'DELETE', 'http://127.0.0.1:20000/update/policy/f8f49a779ceb47b3ac810f01ef71b4e0', + json={} + ) + m.register_uri( + 'PUT', 'http://127.0.0.1:20000/update/policy/eac0ecd09ceb47b3ac810f01ef71b4e0', + json={}, + status_code=208 + ) + m.register_uri( + 'DELETE', 'http://127.0.0.1:20000/update/policy/eac0ecd09ceb47b3ac810f01ef71b4e0', + json={} + ) + m.register_uri( + 'PUT', 'http://127.0.0.1:20000/update/pdp/b3d3e18abf3340e8b635fd49e6634ccd', + json={} + ) + m.register_uri( + 'DELETE', 'http://127.0.0.1:20000/update/pdp/b3d3e18abf3340e8b635fd49e6634ccd', + json={} + ) + m.register_uri( + 'DELETE', 'http://127.0.0.1:20000/update/assignment/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/subject', + json={} + ) + m.register_uri( + 'DELETE', 'http://127.0.0.1:20000/update/assignment/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/object', + json={} + ) + m.register_uri( + 'DELETE', 'http://127.0.0.1:20000/update/assignment/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/action', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/perimeter/89ba91c18dd54abfbfde7a66936c51a6/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/subject', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/perimeter/31fd15ad14784a9696fcc887dddbfaf9/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/subject', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/perimeter/67b8008a3f8d4f8e847eb628f0f7ca0e/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/object', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/perimeter/9089b3d2ce5b4e929ffc7e35b55eba1a/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/object', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/perimeter/cdb3df220dc05a6ea3334b994827b068/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/action', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/perimeter/9f5112afe9b34a6c894eb87246ccb7aa/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/action', + json={} + ) + + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/perimeter/89ba91c18dd54abfbfde7a66936c51a6/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/subject', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/perimeter/31fd15ad14784a9696fcc887dddbfaf9/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/subject', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/perimeter/67b8008a3f8d4f8e847eb628f0f7ca0e/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/object', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/perimeter/9089b3d2ce5b4e929ffc7e35b55eba1a/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/object', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/perimeter/cdb3df220dc05a6ea3334b994827b068/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/action', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/perimeter/9f5112afe9b34a6c894eb87246ccb7aa/' + 'f8f49a779ceb47b3ac810f01ef71b4e0/action', + json={} + ) + + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/rule/f8f49a779ceb47b3ac810f01ef71b4e0/' + '0201a2bcf56943c1904dbac016289b71', + json={} + ) + + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/rule/f8f49a779ceb47b3ac810f01ef71b4e0/' + '0bd7da3b20bb4b57af10c0e362aac847', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/model/cd923d8633ff4978ab0e99938f5153d6', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/model/cd923d8633ff4978ab0e99938f5153d6', + json={} + ) + + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/meta_data/14e6ae0ba34d458b876c791b73aa17bd/subject', + json={} + ) + + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/meta_data/241a2a791554421a91c9f1bc564aa94d/action', + json={} + ) + + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/meta_data/6d48500f639d4c2cab2b1f33ef93a1e8/object', + json={} + ) + + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/meta_rule/4700cc0e38ef4cffa34025602d267c9e', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/meta_rule/4700cc0e38ef4cffa34025602d267c9e', + json={} + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:20000/authz/testuser/vm1/boot', + json={}, + status_code=204 + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/data/4d4b3c3ba45e48589b382a6e369bafbe/subject', + json={} + ) + + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/data/11209d83b167438cb8ab3e5d5351329e/object', + json={} + ) + m.register_uri( + 'DELETE', + 'http://127.0.0.1:20000/update/data/5ced7ea5e1714f0888d6b4f94c32c29c/action', + json={} + ) + m.register_uri( + 'PUT', + 'http://127.0.0.1:20000/update/slave/24aa2a391554421a98c9f1bc564ae94d', + json={} + ) + m.register_uri( + 'GET', + '/authz/a64beb1cc224474fb4badd43173e7101/testuser/vm1/boot', + json={"result": True} + ) + m.register_uri( + 'GET', + 'http://127.0.0.1:20000/authz/a64beb1cc224474fb4badd43173e7101/testuser/vm1/boot', + json={"result": True} + ) + + diff --git a/moon_engine/tests/unit_python/moon.yaml b/moon_engine/tests/unit_python/moon.yaml new file mode 100644 index 00000000..a1257a20 --- /dev/null +++ b/moon_engine/tests/unit_python/moon.yaml @@ -0,0 +1,54 @@ +type: "pipeline" +uuid: "a64beb1c-c224-474f-b4ba-dd43173e7101" +management: + url: "http://127.0.0.1:8000" + token_file: moon_engine_users.json +incremental_updates: false +api_token: +data: conf/policy_example.json +debug: true + +orchestration: + driver: moon_engine.plugins.pyorchestrator + connection: local + port: 20000...20100 + config_dir: /tmp + +authorization: + driver: moon_engine.plugins.authz + +plugins: + directory: /tmp + +logging: + version: 1 + + formatters: + brief: + format: "%(levelname)s %(name)s %(message)-30s" + custom: + format: "%(asctime)-15s %(levelname)s %(name)s %(message)s" + + handlers: + console: + class : logging.StreamHandler + formatter: custom + level : INFO + stream : ext://sys.stdout + file: + class : logging.handlers.RotatingFileHandler + formatter: custom + level : DEBUG + filename: /tmp/moon_engine.log + maxBytes: 1048576 + backupCount: 3 + + loggers: + moon: + level: DEBUG + handlers: [console, file] + propagate: no + + root: + level: ERROR + handlers: [console]
\ No newline at end of file diff --git a/moon_engine/tests/unit_python/moon_engine_users.json b/moon_engine/tests/unit_python/moon_engine_users.json new file mode 100644 index 00000000..97602c98 --- /dev/null +++ b/moon_engine/tests/unit_python/moon_engine_users.json @@ -0,0 +1 @@ +{"_default": {"1": {"username": "admin", "password": "0ded616e9bc4dcf292e3d282adb66b76eb28335bec14608fc860f96bd0f85210486085f59eb582fc1da9e965de0735dadbeda05ddaefe3db7c9cc8b1755eb0dc", "salt": "6704f5bdd5e0193be205e04661c6b998238debd74f8c7da5503a0493b8c710358ebe6303bac9c2758521a5d228cf3954a99334604e7ea3ecd0fe240a39210a12", "api_key": "30d200fee36bfeceb0cbd1479f8dcda92720392e92c5ddb63ea06979a75b9a055516b6c840def90de49eb02abac1f78ddfe38618cc1c36000e59875acb4664d3"}}}
\ No newline at end of file diff --git a/moon_engine/tests/unit_python/policy_example.json b/moon_engine/tests/unit_python/policy_example.json new file mode 100644 index 00000000..6adddd06 --- /dev/null +++ b/moon_engine/tests/unit_python/policy_example.json @@ -0,0 +1,470 @@ +{ + "policies": [ + { + "name": "MLS Policy", + "genre": "authz", + "description": "MLS policy", + "model": { + "name": "MLS" + }, + "mandatory": true, + "override": true + } + ], + "models": [ + { + "name": "MLS", + "description": "", + "meta_rules": [ + { + "name": "mls" + } + ], + "override": true + } + ], + "subjects": [ + { + "name": "admin", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + }, + { + "name": "demo", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + } + ], + "subject_categories": [ + { + "name": "level", + "description": "subject level" + } + ], + "subject_data": [ + { + "name": "high", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "medium", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "low", + "description": "", + "policies": [], + "category": { + "name": "level" + } + } + ], + "subject_assignments": [ + { + "subject": {"name": "admin"}, + "category": {"name": "level"}, + "assignments": [{"name": "high"}] + }, + { + "subject": {"name": "demo"}, + "category": {"name": "level"}, + "assignments": [{"name": "low"}] + } + ], + "objects": [ + { + "name": "vm1", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + }, + { + "name": "vm2", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + }, + { + "name": "vm3", + "description": "", + "extra": {}, + "policies": [ + { + "name": "MLS Policy" + } + ] + } + ], + "object_categories": [ + { + "name": "level", + "description": "object level" + } + ], + "object_data": [ + { + "name": "high", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "medium", + "description": "", + "policies": [], + "category": { + "name": "level" + } + }, + { + "name": "low", + "description": "", + "policies": [], + "category": { + "name": "level" + } + } + ], + "object_assignments": [ + { + "object": {"name": "vm1"}, + "category": {"name": "level"}, + "assignments": [{"name": "high"}] + }, + { + "object": {"name": "vm2"}, + "category": {"name": "level"}, + "assignments": [{"name": "medium"}] + }, + { + "object": {"name": "vm3"}, + "category": {"name": "level"}, + "assignments": [{"name": "low"}] + } + ], + "actions": [ + { + "name": "use_image", + "description": "use_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "get_images", + "description": "get_images action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "update_image", + "description": "update_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + }, + { + "name": "set_image", + "description": "set_image action for glance", + "extra": { + "component": "glance" + }, + "policies": [] + } + ], + "action_categories": [ + { + "name": "type", + "description": "" + } + ], + "action_data": [ + { + "name": "read", + "description": "read action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "write", + "description": "write action", + "policies": [], + "category": { + "name": "type" + } + }, + { + "name": "execute", + "description": "execute action", + "policies": [], + "category": { + "name": "type" + } + } + ], + "action_assignments": [ + { + "action": {"name": "use_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "execute"}] + }, + { + "action": {"name": "update_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}, {"name": "write"}] + }, + { + "action": {"name": "set_image"}, + "category": {"name": "type"}, + "assignments": [{"name": "write"}] + }, + { + "action": {"name": "get_images"}, + "category": {"name": "type"}, + "assignments": [{"name": "read"}] + } + ], + "meta_rules": [ + { + "name": "mls", + "description": "", + "subject_categories": [{"name": "level"}], + "object_categories": [{"name": "level"}], + "action_categories": [{"name": "type"}] + } + ], + "rules": [ + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "high"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "low"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "read"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "high"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "low"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "write"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "high"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "high"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "medium"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "medium"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + }, + { + "meta_rule": {"name": "mls"}, + "rule": { + "subject_data": [{"name": "low"}], + "object_data": [{"name": "low"}], + "action_data": [{"name": "execute"}] + }, + "policy": {"name": "MLS Policy"}, + "instructions": [{"decision": "grant"}], + "enabled": true + } + ] +}
\ No newline at end of file diff --git a/moon_engine/tests/unit_python/requirements.txt b/moon_engine/tests/unit_python/requirements.txt new file mode 100644 index 00000000..611c265c --- /dev/null +++ b/moon_engine/tests/unit_python/requirements.txt @@ -0,0 +1,5 @@ +hug!=2.5.0 +moon_utilities +moon_cache +requests_mock +pytest-benchmark
\ No newline at end of file |