策略¶
警告
由于 olso.policy 库弃用了 Victoria,因此 Wallaby 开发周期中已弃用基于 JSON 格式的策略文件。使用 oslopolicy-convert-json-to-yaml 工具以向后兼容的方式将现有的 JSON 转换为 YAML 格式的策略文件。
以下是 Ironic 中所有可用策略的概述。有关示例配置文件,请参阅 Ironic 策略。
ironic.api¶
admin_api- 默认值:
role:admin 或 role:administrator
云管理员访问的遗留规则
public_api- 默认值:
is_public_api:True
公共 API 路由的内部标志
show_password- 默认值:
!
在 API 响应中的节点驱动程序信息中显示或屏蔽机密。应谨慎使用此设置,因为使用它可能会带来安全风险。
show_instance_secrets- 默认值:
!
在 API 响应中的实例信息中显示或屏蔽机密。应谨慎使用此设置,因为使用它可能会带来安全风险。
service_role- 默认值:
role:service 且 project_name:%(config.service_project_name)s
匹配服务角色使用情况的规则,并将其定义为单独的规则以启用自定义。
is_member- 默认值:
(project_domain_id:default 或 project_domain_id:None) 且 (project_name:demo 或 project_name:baremetal)
可用于限制对特定项目的访问
is_observer- 默认值:
rule:is_member 且 (role:observer 或 role:baremetal_observer)
只读 API 访问权限
is_admin- 默认值:
rule:admin_api 或 (rule:is_member 且 role:baremetal_admin)
完全的读/写 API 访问权限
is_node_owner- 默认值:
project_id:%(node.owner)s
节点的拥有者
is_node_lessee- 默认值:
project_id:%(node.lessee)s
节点的承租人
is_allocation_owner- 默认值:
project_id:%(allocation.owner)s
分配的拥有者
baremetal:node:create- 默认值:
(role:admin 且 system_scope:all) 或 (role:service 且 system_scope:all)- 操作:
POST
/nodes
- 作用域类型:
系统
project
创建节点记录
baremetal:node:create:self_owned_node- 默认值:
(role:admin) 或 (role:service)- 操作:
POST
/nodes
- 作用域类型:
系统
project
创建将跟踪为与关联用户项目拥有的节点记录。
baremetal:node:list- 默认值:
(role:reader) 或 (role:service)- 操作:
GET
/nodesGET
/nodes/detail
- 作用域类型:
系统
project
检索多个节点记录,按显式所有者或客户端 project_id 过滤
baremetal:node:list_all- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/nodesGET
/nodes/detail
- 作用域类型:
系统
project
检索多个节点记录
baremetal:node:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}
- 作用域类型:
系统
project
检索单个节点记录
baremetal:node:get:filter_threshold- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/nodes/{node_ident}
- 作用域类型:
系统
project
过滤器,允许操作员管理信息应该被过滤的阈值。未授权的用户将受到 API 内容响应体的额外 API 策略检查。
baremetal:node:get:last_error- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:reader 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 last_error 字段是否被屏蔽,以防止权限不足的 API 客户端访问。
baremetal:node:get:reservation- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:reader 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 reservation 字段是否被屏蔽,以防止权限不足的 API 客户端访问。
baremetal:node:get:driver_internal_info- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:reader 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 driver_internal_info 字段是否被屏蔽,以防止权限不足的 API 客户端访问。
baremetal:node:get:driver_info- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:reader 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}
- 作用域类型:
系统
project
控制 driver_info 字段是否被屏蔽,以防止权限不足的 API 客户端访问。
baremetal:node:update:driver_info- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 driver_info 字段是否可以通过 API 客户端更新。
baremetal:node:update:properties- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 properties 字段是否可以通过 API 客户端更新。
baremetal:node:update:chassis_uuid- 默认值:
role:admin 且 system_scope:all- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 chassis_uuid 字段是否可以通过 API 客户端更新。
baremetal:node:update:instance_uuid- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 instance_uuid 字段是否可以通过 API 客户端更新。
baremetal:node:update:lessee- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 lessee 字段是否可以通过 API 客户端更新。
baremetal:node:update:owner- 默认值:
(role:member 且 system_scope:all) 或 rule:service_role- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 owner 字段是否可以通过 API 客户端更新。
baremetal:node:update:driver_interfaces- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点驱动程序和驱动程序接口字段是否可以通过 API 客户端更新。
baremetal:node:update:network_data- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 driver_info 字段是否可以通过 API 客户端更新。
baremetal:node:update:conductor_group- 默认值:
(role:member 且 system_scope:all) 或 rule:service_role- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 conductor_group 字段是否可以通过 API 客户端更新。
baremetal:node:update:name- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 name 字段是否可以通过 API 客户端更新。
baremetal:node:update:retired- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 retired 和 retired reason 是否可以由 API 客户端更新。
baremetal:node:update- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:member 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 system_scope:all)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
节点记录的通用更新
baremetal:node:update_extra- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:member 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 system_scope:all)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
更新节点 extra 字段
baremetal:node:update_instance_info- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
更新节点 instance_info 字段
baremetal:node:update_owner_provisioned- 默认值:
role:admin 且 system_scope:all- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
更新节点所有者,即使节点已配置
baremetal:node:delete- 默认值:
role:admin 且 system_scope:all- 操作:
DELETE
/nodes/{node_ident}
- 作用域类型:
系统
project
删除节点记录
baremetal:node:delete:self_owned_node- 默认值:
role:admin 且 project_id:%(node.owner)s- 操作:
DELETE
/nodes/{node_ident}
- 作用域类型:
系统
project
删除与请求项目关联的节点记录。
baremetal:node:validate- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/validate
- 作用域类型:
系统
project
请求对节点进行活动验证
baremetal:node:set_maintenance- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/maintenance
- 作用域类型:
系统
project
设置维护标志,使节点退出服务
baremetal:node:clear_maintenance- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
DELETE
/nodes/{node_ident}/maintenance
- 作用域类型:
系统
project
清除维护标志,使节点重新投入服务
baremetal:node:get_boot_device- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/management/boot_deviceGET
/nodes/{node_ident}/management/boot_device/supported
- 作用域类型:
系统
project
检索节点启动设备元数据
baremetal:node:set_boot_device- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/management/boot_device
- 作用域类型:
系统
project
更改节点启动设备
baremetal:node:get_indicator_state- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/management/indicators/{component}/{indicator}GET
/nodes/{node_ident}/management/indicators
- 作用域类型:
系统
project
检索节点指示器及其状态
baremetal:node:set_indicator_state- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/management/indicators/{component}/{indicator}
- 作用域类型:
系统
project
更改节点指示器状态
baremetal:node:inject_nmi- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/management/inject_nmi
- 作用域类型:
系统
project
为节点注入 NMI
baremetal:node:get_states- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/states
- 作用域类型:
系统
project
查看节点电源和配置状态
baremetal:node:set_power_state- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:member 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 system_scope:all)- 操作:
PUT
/nodes/{node_ident}/states/power
- 作用域类型:
系统
project
更改节点电源状态
baremetal:node:set_boot_mode- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:member 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 system_scope:all)- 操作:
PUT
/nodes/{node_ident}/states/boot_mode
- 作用域类型:
系统
project
更改节点启动模式
baremetal:node:set_secure_boot- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:member 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 system_scope:all)- 操作:
PUT
/nodes/{node_ident}/states/secure_boot
- 作用域类型:
系统
project
更改节点安全启动状态
baremetal:node:set_provision_state- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/states/provision
- 作用域类型:
系统
project
更改节点配置状态
baremetal:node:set_provision_state:clean_steps- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/states/provision
- 作用域类型:
系统
project
允许在节点上执行任意步骤
baremetal:node:set_provision_state:service_steps- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/states/provision
- 作用域类型:
系统
project
允许在节点上执行任意步骤
baremetal:node:set_raid_state- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/states/raid
- 作用域类型:
系统
project
更改节点 RAID 状态
baremetal:node:get_console- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/states/console
- 作用域类型:
系统
project
获取节点控制台连接信息
baremetal:node:set_console_state- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/states/console
- 作用域类型:
系统
project
更改节点控制台状态
baremetal:node:vif:list- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/vifs
- 作用域类型:
系统
project
列出附加到节点的 VIF
baremetal:node:vif:attach- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
POST
/nodes/{node_ident}/vifs
- 作用域类型:
系统
project
将 VIF 附加到节点
baremetal:node:vif:detach- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
DELETE
/nodes/{node_ident}/vifs/{node_vif_ident}
- 作用域类型:
系统
project
从节点分离 VIF
baremetal:node:traits:list- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/traits
- 作用域类型:
系统
project
列出节点特性
baremetal:node:traits:set- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PUT
/nodes/{node_ident}/traitsPUT
/nodes/{node_ident}/traits/{trait}
- 作用域类型:
系统
project
将特性添加到节点,或替换节点的所有特性
baremetal:node:traits:delete- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
DELETE
/nodes/{node_ident}/traitsDELETE
/nodes/{node_ident}/traits/{trait}
- 作用域类型:
系统
project
从节点删除一个或所有特性
baremetal:node:bios:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/biosGET
/nodes/{node_ident}/bios/{setting}
- 作用域类型:
系统
project
检索节点 BIOS 信息
baremetal:node:disable_cleaning- 默认值:
role:admin 且 system_scope:all- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
禁用节点磁盘清理
baremetal:node:history:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:reader 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/historyGET
/nodes/{node_ident}/history/{event_ident}
- 作用域类型:
系统
project
允许操作员检索节点的历史记录。
baremetal:node:inventory:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:reader 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/inventory
- 作用域类型:
系统
project
检索节点的检查数据。
baremetal:node:update:shard- 默认值:
role:admin 且 system_scope:all- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 shard 字段是否可以通过 API 客户端更新。
baremetal:shards:get- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/shards
- 作用域类型:
系统
project
控制 shards 是否可以通过 API 客户端读取。
baremetal:node:update:parent_node- 默认值:
(role:member 且 system_scope:all) 或 rule:service_role- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制节点 parent_node 字段是否可以通过 API 客户端更新。
baremetal:node:update:disable_power_off- 默认值:
role:admin 且 system_scope:all- 操作:
PATCH
/nodes/{node_ident}
- 作用域类型:
系统
project
控制是否可以通过 API 客户端禁用关机。
baremetal:node:firmware:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/firmware
- 作用域类型:
系统
project
检索节点固件组件信息
baremetal:node:vmedia:attach- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:member 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 system_scope:all)- 操作:
POST
/nodes/{node_ident}/vmedia
- 作用域类型:
系统
project
将虚拟媒体设备附加到节点
baremetal:node:vmedia:detach- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:member 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 system_scope:all)- 操作:
DELETE
/nodes/{node_ident}/vmedia
- 作用域类型:
系统
project
从节点分离虚拟媒体设备
baremetal:node:vmedia:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/nodes/{node_ident}/vmedia
- 作用域类型:
系统
project
获取节点虚拟媒体设备详细信息
baremetal:port:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/ports/{port_id}GET
/nodes/{node_ident}/portsGET
/nodes/{node_ident}/ports/detailGET
/portgroups/{portgroup_ident}/portsGET
/portgroups/{portgroup_ident}/ports/detail
- 作用域类型:
系统
project
检索端口记录
baremetal:port:list- 默认值:
(role:reader) 或 (role:service)- 操作:
GET
/portsGET
/ports/detail
- 作用域类型:
系统
project
检索多个端口记录,按所有者过滤
baremetal:port:list_all- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/portsGET
/ports/detail
- 作用域类型:
系统
project
检索多个端口记录
baremetal:port:create- 默认值:
(role:admin and system_scope:all) 或 (role:service and system_scope:all) 或 (role:admin and project_id:%(node.owner)s) 或 (role:manager and project_id:%(node.owner)s) 或 (role:service and project_id:%(node.owner)s)- 操作:
POST
/ports
- 作用域类型:
系统
project
创建端口记录
baremetal:port:delete- 默认值:
(role:admin and system_scope:all) 或 (role:service and system_scope:all) 或 (role:admin and project_id:%(node.owner)s) 或 (role:manager and project_id:%(node.owner)s) 或 (role:service and project_id:%(node.owner)s)- 操作:
DELETE
/ports/{port_id}
- 作用域类型:
系统
project
删除端口记录
baremetal:port:update- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/ports/{port_id}
- 作用域类型:
系统
project
更新端口记录
baremetal:portgroup:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/portgroupsGET
/portgroups/detailGET
/portgroups/{portgroup_ident}GET
/nodes/{node_ident}/portgroupsGET
/nodes/{node_ident}/portgroups/detail
- 作用域类型:
系统
project
检索端口组记录
baremetal:portgroup:create- 默认值:
(role:admin and system_scope:all) 或 (role:service and system_scope:all) 或 (role:admin and project_id:%(node.owner)s) 或 (role:manager and project_id:%(node.owner)s) 或 (role:service and project_id:%(node.owner)s)- 操作:
POST
/portgroups
- 作用域类型:
系统
project
创建端口组记录
baremetal:portgroup:delete- 默认值:
(role:admin and system_scope:all) 或 (role:service and system_scope:all) 或 (role:admin and project_id:%(node.owner)s) 或 (role:manager and project_id:%(node.owner)s) 或 (role:service and project_id:%(node.owner)s)- 操作:
DELETE
/portgroups/{portgroup_ident}
- 作用域类型:
系统
project
删除端口组记录
baremetal:portgroup:update- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:admin 且 project_id:%(node.owner)s) 或 (role:manager 且 project_id:%(node.owner)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/portgroups/{portgroup_ident}
- 作用域类型:
系统
project
更新端口组记录
baremetal:portgroup:list- 默认值:
(role:reader) 或 (role:service)- 操作:
GET
/portgroupsGET
/portgroups/detail
- 作用域类型:
系统
project
检索多个端口记录,按所有者过滤
baremetal:portgroup:list_all- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/portgroupsGET
/portgroups/detail
- 作用域类型:
系统
project
检索多个端口记录
baremetal:chassis:get- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/chassisGET
/chassis/detailGET
/chassis/{chassis_id}
- 作用域类型:
系统
检索机箱记录
baremetal:chassis:create- 默认值:
role:admin 且 system_scope:all- 操作:
POST
/chassis
- 作用域类型:
系统
创建机箱记录
baremetal:chassis:delete- 默认值:
role:admin 且 system_scope:all- 操作:
DELETE
/chassis/{chassis_id}
- 作用域类型:
系统
删除机箱记录
baremetal:chassis:update- 默认值:
(role:member 且 system_scope:all) 或 rule:service_role- 操作:
PATCH
/chassis/{chassis_id}
- 作用域类型:
系统
更新机箱记录
baremetal:driver:get- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/driversGET
/drivers/{driver_name}
- 作用域类型:
系统
查看可用驱动程序列表
baremetal:driver:get_properties- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/drivers/{driver_name}/properties
- 作用域类型:
系统
查看驱动程序特定属性
baremetal:driver:get_raid_logical_disk_properties- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/drivers/{driver_name}/raid/logical_disk_properties
- 作用域类型:
系统
查看驱动程序特定的 RAID 元数据
baremetal:node:vendor_passthru- 默认值:
role:admin 且 system_scope:all- 操作:
GET
nodes/{node_ident}/vendor_passthru/methodsGET
nodes/{node_ident}/vendor_passthru?method={method_name}PUT
nodes/{node_ident}/vendor_passthru?method={method_name}POST
nodes/{node_ident}/vendor_passthru?method={method_name}PATCH
nodes/{node_ident}/vendor_passthru?method={method_name}DELETE
nodes/{node_ident}/vendor_passthru?method={method_name}
- 作用域类型:
系统
project
访问特定于供应商的节点功能
baremetal:driver:vendor_passthru- 默认值:
role:admin 且 system_scope:all- 操作:
GET
drivers/{driver_name}/vendor_passthru/methodsGET
drivers/{driver_name}/vendor_passthru?method={method_name}PUT
drivers/{driver_name}/vendor_passthru?method={method_name}POST
drivers/{driver_name}/vendor_passthru?method={method_name}PATCH
drivers/{driver_name}/vendor_passthru?method={method_name}DELETE
drivers/{driver_name}/vendor_passthru?method={method_name}
- 作用域类型:
系统
访问特定于供应商的驱动程序功能
baremetal:node:ipa_heartbeat- 默认值:
<空字符串>
- 操作:
POST
/heartbeat/{node_ident}
接收来自 IPA 内存盘的心跳
baremetal:driver:ipa_lookup- 默认值:
<空字符串>
- 操作:
GET
/lookup
访问 IPA 内存盘功能
baremetal:driver:ipa_continue_inspection- 默认值:
<空字符串>
- 操作:
POST
/continue_inspection
接收来自内存盘的检查数据
baremetal:volume:list_all- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/volume/connectorsGET
/volume/targetsGET
/nodes/{node_ident}/volume/connectorsGET
/nodes/{node_ident}/volume/targets
- 作用域类型:
系统
project
检索所有 Volume 连接器和目标记录的列表
baremetal:volume:list- 默认值:
(role:reader) 或 (role:service)- 操作:
GET
/volume/connectorsGET
/volume/targetsGET
/nodes/{node_ident}/volume/connectorsGET
/nodes/{node_ident}/volume/targets
- 作用域类型:
系统
project
检索 Volume 连接器和目标记录的列表
baremetal:volume:get- 默认值:
((role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role) 或 (role:reader 且 (project_id:%(node.owner)s 或 project_id:%(node.lessee)s)) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
GET
/volumeGET
/volume/connectorsGET
/volume/connectors/{volume_connector_id}GET
/volume/targetsGET
/volume/targets/{volume_target_id}GET
/nodes/{node_ident}/volumeGET
/nodes/{node_ident}/volume/connectorsGET
/nodes/{node_ident}/volume/targets
- 作用域类型:
系统
project
检索 Volume 连接器和目标记录
baremetal:volume:create- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:service and system_scope:all) 或 (role:admin and project_id:%(node.owner)s) 或 (role:manager and project_id:%(node.owner)s) 或 (role:admin and project_id:%(node.lessee)s) 或 (role:manager and project_id:%(node.lessee)s) 或 (role:service and project_id:%(node.owner)s)- 操作:
POST
/volume/connectorsPOST
/volume/targets
- 作用域类型:
系统
project
创建 Volume 连接器和目标记录
baremetal:volume:delete- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:service and system_scope:all) 或 (role:admin and project_id:%(node.owner)s) 或 (role:manager and project_id:%(node.owner)s) 或 (role:admin and project_id:%(node.lessee)s) 或 (role:manager and project_id:%(node.lessee)s) 或 (role:service and project_id:%(node.owner)s)- 操作:
DELETE
/volume/connectors/{volume_connector_id}DELETE
/volume/targets/{volume_target_id}
- 作用域类型:
系统
project
删除 Volume 连接器和目标记录
baremetal:volume:update- 默认值:
((role:member 且 system_scope:all) 或 rule:service_role) 或 (role:service 且 system_scope:all) 或 (role:member 且 project_id:%(node.owner)s) 或 (role:admin 且 project_id:%(node.lessee)s) 或 (role:manager 且 project_id:%(node.lessee)s) 或 (role:service 且 project_id:%(node.owner)s)- 操作:
PATCH
/volume/connectors/{volume_connector_id}PATCH
/volume/targets/{volume_target_id}
- 作用域类型:
系统
project
更新 Volume 连接器和目标记录
baremetal:volume:view_target_properties- 默认值:
((role:reader and system_scope:all) 或 (role:service and system_scope:all) 或 rule:service_role) 或 (role:admin)- 操作:
GET
/volume/connectors/{volume_connector_id}GET
/volume/targets/{volume_target_id}
- 作用域类型:
系统
project
查看 Volume 目标属性的权限
baremetal:conductor:get- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/conductorsGET
/conductors/{hostname}
- 作用域类型:
系统
project
检索 Conductor 记录
baremetal:allocation:get- 默认值:
((role:reader and system_scope:all) 或 (role:service and system_scope:all) 或 rule:service_role) 或 (role:reader and project_id:%(allocation.owner)s)- 操作:
GET
/allocations/{allocation_id}GET
/nodes/{node_ident}/allocation
- 作用域类型:
系统
project
检索 Allocation 记录
baremetal:allocation:list- 默认值:
(role:reader) 或 (role:service)- 操作:
GET
/allocations
- 作用域类型:
系统
project
检索多个 Allocation 记录,按所有者过滤
baremetal:allocation:list_all- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/allocations
- 作用域类型:
系统
project
检索多个 Allocation 记录
baremetal:allocation:create- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:member)- 操作:
POST
/allocations
- 作用域类型:
系统
project
创建 Allocation 记录
baremetal:allocation:create_restricted- 默认值:
(role:member 且 system_scope:all) 或 rule:service_role- 操作:
POST
/allocations
- 作用域类型:
系统
project
使用特定所有者创建 Allocation 记录。
baremetal:allocation:delete- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:member and project_id:%(allocation.owner)s)- 操作:
DELETE
/allocations/{allocation_id}DELETE
/nodes/{node_ident}/allocation
- 作用域类型:
系统
project
删除 Allocation 记录
baremetal:allocation:update- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:member and project_id:%(allocation.owner)s)- 操作:
PATCH
/allocations/{allocation_id}
- 作用域类型:
系统
project
更改 Allocation 的名称和附加字段
baremetal:allocation:create_pre_rbac- 默认值:
(rule:is_member and role:baremetal_admin) 或 (is_admin_project:True and role:admin)- 操作:
PATCH
/allocations/{allocation_id}
- 作用域类型:
project
逻辑限制器,防止遗留 Allocation 规则滥用 - 需要空白 Allocation 来自遗留 baremetal_admin。
baremetal:events:post- 默认值:
role:admin 且 system_scope:all- 操作:
POST
/events
- 作用域类型:
系统
发布事件
baremetal:deploy_template:get- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/deploy_templatesGET
/deploy_templates/{deploy_template_ident}
- 作用域类型:
系统
project
检索部署模板记录
baremetal:deploy_template:create- 默认值:
role:admin 且 system_scope:all- 操作:
POST
/deploy_templates
- 作用域类型:
系统
project
创建部署模板记录
baremetal:deploy_template:delete- 默认值:
role:admin 且 system_scope:all- 操作:
DELETE
/deploy_templates/{deploy_template_ident}
- 作用域类型:
系统
project
删除部署模板记录
baremetal:deploy_template:update- 默认值:
role:admin 且 system_scope:all- 操作:
PATCH
/deploy_templates/{deploy_template_ident}
- 作用域类型:
系统
project
更新部署模板记录
baremetal:runbook:get- 默认值:
((role:reader and system_scope:all) 或 (role:service and system_scope:all) 或 rule:service_role) 或 (role:reader and project_id:%(runbook.owner)s) 或 role:service- 操作:
GET
/runbooks/{runbook_ident}
- 作用域类型:
系统
project
检索单个 Runbook 记录
baremetal:runbook:list- 默认值:
(role:reader) 或 (role:service)- 操作:
GET
/runbooks
- 作用域类型:
系统
project
检索多个 Runbook 记录,按显式所有者或客户端 project_id 过滤
baremetal:runbook:list_all- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/runbooks
- 作用域类型:
系统
project
检索所有 Runbook 记录
baremetal:runbook:create- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 role:manager 或 role:service- 操作:
POST
/runbooks
- 作用域类型:
系统
project
创建 Runbook 记录
baremetal:runbook:delete- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:manager and project_id:%(runbook.owner)s) 或 role:service- 操作:
DELETE
/runbooks/{runbook_ident}
- 作用域类型:
系统
project
删除 Runbook 记录
baremetal:runbook:update- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:manager and project_id:%(runbook.owner)s) 或 role:service- 操作:
PATCH
/runbooks/{runbook_ident}
- 作用域类型:
系统
project
更新 Runbook 记录
baremetal:runbook:update:public- 默认值:
(role:member 且 system_scope:all) 或 rule:service_role- 操作:
PATCH
/runbooks/{runbook_ident}/public
- 作用域类型:
系统
project
设置和取消设置 Runbook 为公共
baremetal:runbook:update:owner- 默认值:
(role:member 且 system_scope:all) 或 rule:service_role- 操作:
PATCH
/runbooks/{runbook_ident}/owner
- 作用域类型:
系统
project
设置和取消设置 Runbook 的所有者
baremetal:runbook:use- 默认值:
((role:member and system_scope:all) 或 rule:service_role) 或 (role:manager and project_id:%(runbook.owner)s) 或 role:service- 操作:
PUT
/nodes/{node_ident}/states/provision
- 作用域类型:
系统
project
允许将 Runbook 用于节点操作
baremetal:inspection_rule:get- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/inspection_rulesGET
/inspection_rules/{rule_id}
- 作用域类型:
系统
project
获取检查规则
baremetal:inspection_rule:list_all- 默认值:
(role:reader 且 system_scope:all) 或 (role:service 且 system_scope:all) 或 rule:service_role- 操作:
GET
/inspection_rules
- 作用域类型:
系统
project
检索所有 inspection_rule 记录
baremetal:inspection_rule:create- 默认值:
role:admin 且 system_scope:all- 操作:
POST
/inspection_rules
- 作用域类型:
系统
project
创建检查规则
baremetal:inspection_rule:update- 默认值:
role:admin 且 system_scope:all- 操作:
PATCH
/inspection_rules/{rule_id}
- 作用域类型:
系统
project
更新检查规则
baremetal:inspection_rule:delete- 默认值:
role:admin 且 system_scope:all- 操作:
DELETE
/inspection_rulesDELETE
/inspection_rules/{rule_id}
- 作用域类型:
系统
project
删除检查规则