iT邦幫忙

2024 iThome 鐵人賽

DAY 25
0

隨著應用與用戶的增加,能夠有效管理對Kubernetes集群中的資源訪問變得越來越重要。Kubernetes基於角色的訪問控制RBAC,根據使用者的或群組的角色來控制對資源的訪問。RBAC不僅能夠提高集群的安全性,還能簡化權限管理,確保只有授權的使用者能夠執行特定的操作。

角色

Role

定義特定命名空間內的權限,可以授予對資源(例如:Pod、Service等)的訪問權限。

ClusterRole

與Role相似,但作用的範圍更廣,適用於整個集群,可以跨所有命名空間授予權限。

角色綁定

RoleBinding

將角色的權限賦予特定的使用者或群組,並且僅在特定的命名空間內有效。

ClusterRoleBinding

將集群角色的權限賦予特定的使用者或群組,並且在整個集群中有效,而不只是在特定的命名空間內有效。

規則設置

rules:  
- apiGroups: [""]  
  resources: ["pods"]  
  verbs: ["get", "watch", "create"]
  • resources
    這個參數用來設置在Kubernetes集群中可以操作的資源類型,這些資源可以是集群中的各種物件,如Pod、Service、Deployment等。

  • verbs

    1. get: 獲取資源的訊息
    2. list: 獲取資源的列表
    3. watch: 監控資源的變動,常用於實時的更新
    4. create: 創建新的資源實例
    5. update: 更新指定資源的屬性
    6. delete: 刪除指定資源
    7. deletecollection: 刪除資源集合中的多個實例
    8. patch: 對指定資源進行部分的更新
    9. proxy: 代理請求到特定資源

總結

Kubernetes RBAC 可以控制對集群資源的訪問權限。通過定義Role和ClusterRole可以根據需求,賦予或限制對資源的操作權限。verbs、resources這些組件共同構成靈活的權限管理。透過合理設定RBAC,可以有效的保護Kubernetes中的資源,讓只擁有授權才能夠執行操作,去降低潛在的安全風險。


上一篇
Day24 淺談 Kubernetes Auto Scaling - Horizontal Pod Autoscaler
下一篇
Day26 淺談Kubernetes ELK Stack
系列文
Kubernetes 中關於網路的二三事30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言