可以新增 policy 區段,以控制特定服務的 RBAC 原則。

如需有關 Nova 原則的詳細資訊,請參閱OpenStack Nova 原則

如需有關 Nova 原則範例的詳細資訊,請參閱OpenStack Nova 原則範例

例如,若要為 Nova 命令新增 RBAC 原則,可以使用 viocli update nova 命令。
conf:
  policy:
    # use key: value format to update services polices
    
    # List availability zone information without host information
    # GET  /os-availability-zone
    "os_compute_api:os-availability-zone:list": "rule:admin_api"

完成更新後,請等待幾分鐘的時間以重新建立網繭,然後可以確認原則變更在網繭內是否生效。

可以在 Nova 原則檔案中使用 test_key
# osctl get pod | grep nova-api
nova-api-metadata-cdcd4bbbb-5hhtq                                 1/1     Running     0          110s
nova-api-osapi-7d7978fb44-b24rl                                   2/2     Running     0          110s
# osctl exec -it nova-api-osapi-7d7978fb44-b24rl /bin/bash
Defaulting container name to nova-osapi.
Use 'kubectl describe pod/nova-api-osapi-7d7978fb44-b24rl -n openstack' to see all of the containers in this pod.
 
[root@nova-api-osapi-7d7978fb44-b24rl /]# grep test_key /etc/nova/policy.yaml        
test_key: test_value
[root@nova-api-osapi-7d7978fb44-b24rl /]#