2023 K8s CKA 原生K8s管理員認(rèn)證
K8S之權(quán)限管理
Role 和 ClusterRole
在 RBAC API 中,一個(gè)角色包含一組相關(guān)權(quán)限的規(guī)則。權(quán)限是純粹累加的(不存在拒絕某操作的規(guī)則)。 角色可以用 Role 來(lái)定義到某個(gè)命名空間上, 或者用 ClusterRole 來(lái)定義到整個(gè)集群作用域。
一個(gè) Role 只可以用來(lái)對(duì)某一命名空間中的資源賦予訪問(wèn)權(quán)限。 下面的 Role 示例定義到名稱為"default" 的命名空間,可以用來(lái)授予對(duì)該命名空間中的 Pods 的讀取權(quán)限:
ClusterRole 可以授予的權(quán)限和 Role 相同, 但是因?yàn)?ClusterRole 屬于集群范圍,所以它也可以授予以下訪問(wèn)權(quán)限:
集群范圍資源 (比如 nodes)
非資源端點(diǎn)(比如 /healthz )
跨命名空間訪問(wèn)的有名字空間作用域的資源(如 Pods),比如運(yùn)行命令 kubectl get pods --all- namespaces 時(shí)需要此能力
下面的 ClusterRole 示例可用來(lái)對(duì)某特定命名空間下的 Secrets 的讀取操作授權(quán), 或者跨所有命名空間執(zhí)行授權(quán)(取決于它是如何綁定的):
標(biāo)簽: