AI 助教问 AI 助教
东方瑞通 · CKA

身份验证与RBAC

RBAC(基于角色的访问控制)通过 Role/ClusterRole 定义权限,RoleBinding/ClusterRoleBinding 把权限授予用户、组或服务账号。

考点精讲

  1. RBAC(Role-Based Access Control,基于角色的访问控制)是 Kubernetes 授权机制的核心。它把权限抽象成「角色」再「绑定」给主体,遵循「先认证、后授权」的流程:认证(Authentication)确认「你是谁」,授权(Authorization)决定「你允许做什么」。权限对象分两级:Role 是命名空间内的权限,ClusterRole 是集群级权限;绑定对象也分两级:RoleBinding 把 Role/ClusterRole 绑定到命名空间范围内的主体,ClusterRoleBinding 做集群级绑定。权限用动词(verbs,如 get/list/create/update/delete)+ 资源(resources)描述。考试中「配一个只读某命名空间的账号」是典型场景,要能区分 Role 与 ClusterRole 的适用边界。

记忆技巧

Role 管一个屋,ClusterRole 管整栋楼
认证问你是谁,授权问你允许做什么

常见误区

  • 用 ClusterRole 绑定命名空间资源(应 Role/RoleBinding 或细分)
  • 忘授权导致 403 Forbidden
  • 把认证与授权混为一谈

真题思路

  • 【示例】本页题目为教学模拟题,非真题,仅用于讲解答题思路 要授予用户对某一命名空间内所有 Pod 的只读权限,应创建?
    ClusterRole + ClusterRoleBinding Role + RoleBinding(限定该命名空间) 仅创建 ServiceAccount 仅创建 Secret
    答案:B
    解析:命名空间范围内的只读权限用 Role + RoleBinding;ClusterRole 是集群级、范围过大;ServiceAccount 和 Secret 与权限绑定无直接关系。

常见问题

Q:认证和授权有什么区别

A:认证确认身份(你是谁),授权决定权限(允许做什么)。

Q:Role 和 ClusterRole 区别

A:Role 是命名空间内权限,ClusterRole 是集群级权限。

Q:出现 403 Forbidden 是什么问题

A:通常是 RBAC 授权不足,需检查角色与绑定配置。

相关知识

教材出处:第13章 Kubernetes集群安全 身份验证与RBAC

AI 助教

让 AI 助教带你深入学习,把你卡住的地方直接问它

随时为您答疑解惑

开始答疑