Warning
JSON formatted policy file is deprecated since Placement 5.0.0 (Wallaby). The oslopolicy-convert-json-to-yaml tool will migrate your existing JSON-formatted policy file to YAML in a backward-compatible way.
The following is an overview of all available policies in Placement. For a sample configuration file, refer to Sample Placement Policy File.
admin_api
role:admin
project
Default rule for most placement APIs.
service_api
role:service
project
Default rule for service-to-service placement APIs.
admin_or_service_api
role:admin or role:service
project
Default rule for most placement APIs.
project_reader_api
role:reader and project_id:%(project_id)s
Default rule for Project level reader APIs.
admin_or_project_reader_or_service_api
role:admin or rule:project_reader_api or role:service
project
Default rule for project level reader APIs.
placement:resource_providers:list
rule:admin_or_service_api
GET /resource_providers
project
List resource providers.
placement:resource_providers:create
rule:admin_or_service_api
POST /resource_providers
project
Create resource provider.
placement:resource_providers:show
rule:admin_or_service_api
GET /resource_providers/{uuid}
project
Show resource provider.
placement:resource_providers:update
rule:admin_or_service_api
PUT /resource_providers/{uuid}
project
Update resource provider.
placement:resource_providers:delete
rule:admin_or_service_api
DELETE /resource_providers/{uuid}
project
Delete resource provider.
placement:resource_classes:list
rule:admin_or_service_api
GET /resource_classes
project
List resource classes.
placement:resource_classes:create
rule:admin_or_service_api
POST /resource_classes
project
Create resource class.
placement:resource_classes:show
rule:admin_or_service_api
GET /resource_classes/{name}
project
Show resource class.
placement:resource_classes:update
rule:admin_or_service_api
PUT /resource_classes/{name}
project
Update resource class.
placement:resource_classes:delete
rule:admin_or_service_api
DELETE /resource_classes/{name}
project
Delete resource class.
placement:resource_providers:inventories:list
rule:admin_or_service_api
GET /resource_providers/{uuid}/inventories
project
List resource provider inventories.
placement:resource_providers:inventories:create
rule:admin_or_service_api
POST /resource_providers/{uuid}/inventories
project
Create one resource provider inventory.
placement:resource_providers:inventories:show
rule:admin_or_service_api
GET /resource_providers/{uuid}/inventories/{resource_class}
project
Show resource provider inventory.
placement:resource_providers:inventories:update
rule:admin_or_service_api
PUT /resource_providers/{uuid}/inventories
PUT /resource_providers/{uuid}/inventories/{resource_class}
project
Update resource provider inventory.
placement:resource_providers:inventories:delete
rule:admin_or_service_api
DELETE /resource_providers/{uuid}/inventories
DELETE /resource_providers/{uuid}/inventories/{resource_class}
project
Delete resource provider inventory.
placement:resource_providers:aggregates:list
rule:admin_or_service_api
GET /resource_providers/{uuid}/aggregates
project
List resource provider aggregates.
placement:resource_providers:aggregates:update
rule:admin_or_service_api
PUT /resource_providers/{uuid}/aggregates
project
Update resource provider aggregates.
placement:resource_providers:usages
rule:admin_or_service_api
GET /resource_providers/{uuid}/usages
project
List resource provider usages.
placement:usages
rule:admin_or_project_reader_or_service_api
GET /usages
project
List total resource usages for a given project.
placement:traits:list
rule:admin_or_service_api
GET /traits
project
List traits.
placement:traits:show
rule:admin_or_service_api
GET /traits/{name}
project
Show trait.
placement:traits:update
rule:admin_or_service_api
PUT /traits/{name}
project
Update trait.
placement:traits:delete
rule:admin_or_service_api
DELETE /traits/{name}
project
Delete trait.
placement:resource_providers:traits:list
rule:admin_or_service_api
GET /resource_providers/{uuid}/traits
project
List resource provider traits.
placement:resource_providers:traits:update
rule:admin_or_service_api
PUT /resource_providers/{uuid}/traits
project
Update resource provider traits.
placement:resource_providers:traits:delete
rule:admin_or_service_api
DELETE /resource_providers/{uuid}/traits
project
Delete resource provider traits.
placement:allocations:manage
rule:admin_or_service_api
POST /allocations
project
Manage allocations.
placement:allocations:list
rule:admin_or_service_api
GET /allocations/{consumer_uuid}
project
List allocations.
placement:allocations:update
rule:admin_or_service_api
PUT /allocations/{consumer_uuid}
project
Update allocations.
placement:allocations:delete
rule:admin_or_service_api
DELETE /allocations/{consumer_uuid}
project
Delete allocations.
placement:resource_providers:allocations:list
rule:admin_or_service_api
GET /resource_providers/{uuid}/allocations
project
List resource provider allocations.
placement:allocation_candidates:list
rule:admin_or_service_api
GET /allocation_candidates
project
List allocation candidates.
placement:reshaper:reshape
rule:service_api
POST /reshaper
project
Reshape Inventory and Allocations.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.