DevOps专业术语
RBAC
Role-Based Access Control
基于角色的访问控制 · 按角色管权限而非按人头
Linux云平台
RBAC
- 定义
- RBAC(Role-Based Access Control)是DevOps领域的专业术语。RBAC 将权限绑定到角色而非用户,用户通过被分配角色获得对应权限。
最后更新:2026-03-18
什么是RBAC?
RBAC 将权限绑定到角色而非用户,用户通过被分配角色获得对应权限。K8s、AWS IAM、数据库等系统都采用 RBAC 模型管理访问控制。
- 权限绑定角色,用户绑定角色
- K8s 和云平台的标准权限模型
- 最小权限原则的实现基础
RBAC详解
RBAC 是最广泛使用的访问控制模型。核心概念:用户(User)→ 角色(Role)→ 权限(Permission)。在 Kubernetes 中,RBAC 通过 Role/ClusterRole 和 RoleBinding/ClusterRoleBinding 控制对 API 资源的访问。在 AWS 中,IAM Role 是 RBAC 的实现。RBAC 的最佳实践是遵循最小权限原则:只授予完成工作所需的最少权限。
RBAC的应用场景
正式定义
基于角色分配权限的访问控制模型,用户通过角色间接获得权限
应用场景
- K8s 集群的权限管理
- 云平台的 IAM 策略
- 数据库和应用的用户权限控制
常见误区
- RBAC 不是唯一的权限模型,还有 ABAC、ACL 等
- 角色设计要合理,过多角色反而增加管理复杂度
- RBAC 需要定期审计,避免权限膨胀
实际案例
📌 K8s RBAC
Kubernetes 默认启用 RBAC,通过 Role 定义权限范围,RoleBinding 将角色绑定到用户或 ServiceAccount,是集群安全的第一道防线。
RBAC的参考来源
关于RBAC的常见问题
- RBAC 和 ABAC 有什么区别
- RBAC 基于角色授权(管理员/编辑/查看者),ABAC 基于属性授权(部门+级别+时间),ABAC 更灵活但更复杂。
- RBAC 的最佳实践是什么
- 最小权限原则、定期审计角色分配、避免角色爆炸、分离管理员和普通用户权限。