您好,登錄后才能下訂單哦!
小編給大家分享一下kubernetes中如何實(shí)現(xiàn)RBAC 角色訪問(wèn)控制,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
一:RBAC體系結(jié)構(gòu)
二:RBAC角色綁定流程
三:說(shuō)明
1.RBAC的優(yōu)勢(shì)
a.對(duì)集群中的資源和非資源權(quán)限均有完整覆蓋
b.RBAC由API對(duì)象完成,可以用Kubectl或API進(jìn)行操作
c.可以在允許時(shí)進(jìn)行調(diào)整,無(wú)須重新啟動(dòng)API Server
2.Role
一個(gè)角色就是一組權(quán)限的集合,在一個(gè)命名空間中,可以使用Role定義一個(gè)角色,如果是集群級(jí)別的可以使用ClusterRole.
3.ClusterRole
除了和Role一樣具有命名空間內(nèi)資源的管理能力,還可以用于特殊元素的授權(quán)。如:
a.集群范圍的資源,node等
b.非資源型的路徑,如“/healthz”
c.涵蓋全部命名空間的資源
4.RoleBinding和ClusterRoleBinding
兩者用于把一個(gè)角色綁定到一個(gè)目標(biāo)上,如User,Group或Service Account. RoleBinding可以引用Role和ClusterRole, ClusterRoleBinding僅可以引用ClusterRole.
5.對(duì)資源的引用方式
a.使用“/”來(lái)分隔資源和下級(jí)資源 如:resources: ["pods", "pods/log"]
b.通過(guò)名字進(jìn)行引用 如:resourceNames: ["my-configmap"]
6.常用角色示例
a.運(yùn)行讀取核心API組中的POD資源
點(diǎn)擊(此處)折疊或打開
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "list", "watch"]
b.運(yùn)行讀寫“extensions”和"apps"兩個(gè)API組中的deployment資源
點(diǎn)擊(此處)折疊或打開
rules:
- apiGroups: ["extensions", "apps"]
resources: ["deployments"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
7.常用角色綁定示例
a.綁定Kube-system命名空間中默認(rèn)的service-account
點(diǎn)擊(此處)折疊或打開
subjects:
- kind: ServiceAccount
name: default
namespace: kube-system
b.qa命名空間中的所有service account
點(diǎn)擊(此處)折疊或打開
subjects:
- kind: Group
name: system:serviceaccounts:qa
apiGroup: rbac.authorization.k8s.io
c.所有認(rèn)證用戶
點(diǎn)擊(此處)折疊或打開
subjects:
- kind: Group
name: system:authenticated
apiGroup: rbac.authorization.k8s.io
8.對(duì)Service Account的授權(quán)管理
kube-system之外的service account 是沒有任何權(quán)限的,這就需要用戶為service account賦予所需的權(quán)限。如:
點(diǎn)擊(此處)折疊或打開
kubectl create rolebinding default-view \
--clusterrole=view \
--serviceaccount=my-namespace:default \
--namespace=my-namespace
看完了這篇文章,相信你對(duì)“kubernetes中如何實(shí)現(xiàn)RBAC 角色訪問(wèn)控制”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。