設定檔適用性:等級 1
RBAC 角色
cluster-admin提供對環境的廣泛權限,應僅在必要時使用。Kubernetes 提供了一組預設角色,其中使用了 RBAC。有些角色如
cluster-admin 提供廣泛的權限,應僅在絕對必要時使用。角色如 cluster-admin 允許超級使用者存取,能對任何資源執行任何操作。在 ClusterRoleBinding 中使用時,能對叢集中的每個資源及所有命名空間進行完全控制。在 RoleBinding 中使用時,能對角色綁定的命名空間中的每個資源,包括命名空間本身,進行完全控制。
注意預設情況下,提供一個名為
cluster-admin的單一clusterrolebinding,並以system:masters群組作為其主要群組。 |
影響
在從環境中移除任何
clusterrolebindings 之前,應謹慎行事,以確保它們不是叢集運行所需的。特別是,不應對具有 system: 前綴的 clusterrolebindings 進行修改,因為它們是系統元件運行所必需的。稽核
透過檢視每個具有
cluster-admin角色存取權的角色綁定的clusterrolebinding輸出,取得有權存取cluster-admin角色的主體清單。kubectl get clusterrolebindings -o=custom- columns=NAME:.metadata.name,ROLE:.roleRef.name,SUBJECT:.subjects[*].name
檢查每個列出的主體,並確保其需要
cluster-admin 權限。補救
識別所有
clusterrolebindings 到 cluster-admin 角色。檢查它們是否被使用以及是否需要此角色,或者是否可以使用權限較少的角色。在可能的情況下,首先將使用者綁定到權限較低的角色,然後移除 clusterrolebinding 到 cluster-admin 角色:kubectl delete clusterrolebinding [name]
