k8s的RBAC中,clusterrole, rolebinding 是什么关系谁先谁后

在Kubernetes中,Role-Based Access Control(RBAC)用于控制集群中不同用户、服务账号或组的访问权限。ClusterRole 和 RoleBinding 是两个关键的 RBAC 组件,它们之间的关系是 ClusterRole 定义了一组权限规则,而 RoleBinding 将这些权限规则绑定到特定的用户、服务账号或组。

具体关系如下:

  1. ClusterRole:ClusterRole 是一种全局的权限规则,它定义了一组权限,可以在整个集群中使用。ClusterRole 中可以包括许多规则,如允许某些操作或访问某些资源。ClusterRole 是集群范围的,因此可以在不同的命名空间中使用。

  2. RoleBinding:RoleBinding 是将 ClusterRole 绑定到特定命名空间的一种机制。RoleBinding 定义了哪些用户、服务账号或组将获得 ClusterRole 中定义的权限。RoleBinding 是命名空间特定的,因此它只在一个命名空间内生效。

所以,ClusterRole 先定义了一组权限规则,然后 RoleBinding 将这些规则应用到特定的命名空间或特定的用户/服务账号。这意味着 ClusterRole 的定义通常应该在 RoleBinding 使用之前完成,以确保规则可供绑定。如果你想为整个集群定义权限规则,可以先创建 ClusterRole,然后使用 ClusterRoleBinding 将其绑定到用户或服务账号,而如果你只想在特定命名空间中定义权限规则,可以创建 Role 和 RoleBinding。

相关推荐
阿里云云原生5 小时前
深度解构:当 Append-only 的 SLS 遇上 Update/Delete,是如何实现设计权衡的?
云原生
Java之美14 小时前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
秋播14 小时前
nerdctl推送rancher本地镜像到harbor
云原生
程序员老赵1 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
阿里云云原生1 天前
告别冗长链路!Kafka × Table Bucket 实现开放表格式零 ETL 实时入湖
云原生·kafka
SelectDB2 天前
秒级弹性、最高降本 70%:SelectDB Serverless 如何重塑云数仓资源效率
大数据·后端·云原生
武子康4 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
秋播5 天前
国内本地WSL2编译rancher源码
云原生
小猿姐6 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops