Skip to content

授权用户访问集群名称空间 ​

本页是一个端到端的实操教程:从「让一个新用户能访问某个集群的指定名称空间」出发,把 Kuboard 中需要理解的几个概念(用户 / 用户组 / 角色 / 绑定作用域)串起来。如果你只想把权限授予一个已经存在的用户,可以跳过「第一步」,直接从「第二步」开始。

适用对象:Kuboard 管理员。

教程目标与前置 ​

目标:用户 alice 拥有 Kubernetes 集群 prod-cluster 中名称空间 alice-ns 的管理权限(包括查看 Pod、部署工作负载、查看日志等)。

前置:你已经以 admin 账号登录 Kuboard,且 prod-cluster 已导入 Kuboard(导入集群)。

Kuboard 的授权沿 4 步走:

  1. 创建用户(用户是登录账号),见 第一步;
  2. 创建用户组、把用户加入组(组是授权的对象),见 第二步 + 第五步;
  3. 创建角色(角色定义「能做什么」),见 第三步;
  4. 把角色绑定到组,并指定绑定作用域(哪个集群 / 哪个 ns),见 第四步。

第一步:创建用户 ​

入口:系统管理 → 用户与权限 → 用户 → 「新增用户」。

填写:

  • 用户名:alice(用户登录名,英文,不可改);
  • 初始密码:保留默认 Kuboard123(用户首次登录后会被要求修改);
  • 全名:Alice Anderson(显示用);
  • 来源:保持默认 Kuboard 内置用户。

点击「确定」后,用户出现在用户列表中,状态为「待首次登录」。

第二步:创建用户组 ​

入口:系统管理 → 用户与权限 → 用户组 → 「新增用户组」。

填写:

  • 名称:alice-group(用户组名,英文,不可改);
  • 描述:「Alice 的工作团队」;
  • 组长绑定作用域:选择任意(组长是 Kuboard 的内置 admin 角色,无所谓指定到哪个集群)。

点击「确定」后跳到用户组详情页。

第三步:创建角色 ​

入口:系统管理 → 用户与权限 → 角色 → 「新增角色」。

填写:

  • 名称:alice-namespace-viewer(角色名,不可改);
  • 描述:「Alice 在 alice-namespace 集群名称空间下的查看权限」;
  • 作用域类型:选择名称空间 (namespace)——这是 Kuboard 中控制「哪个集群 / 哪个 ns」的两种作用域之一:
    • kuboard —— 控制平台对象(用户、角色等),
    • cluster —— 控制集群级跨名称空间资源(Node、Namespace 等),
    • namespace —— 控制名称空间内资源(Pod、Deployment、ConfigMap 等)。

点击「确定」后跳到角色详情页,选「权限」页签,勾选你希望 alice 能做的事情。建议勾选:

  • pods、core 下:get、list、watch;
  • pods、core 下:create、exec(终端与日志);
  • 常用工作负载:apps/deployments、apps/statefulsets、apps/daemonsets、batch/jobs、batch/cronjobs 的 get、list、watch、create、update、delete;
  • 配置:configmaps、secrets 的 get、list、watch、create、update、delete;
  • 服务:services core 同上;
  • events core 的 get、list、watch(排障用)。

其余保持不勾选(最小权限原则)。点「保存授权」立即生效。

给某资源打勾的语义

动词含义:get 查看详情,list 列表,create 创建,update 修改,delete 删除。勾上后改即生效。

第四步:把角色绑定到用户组 ​

在角色详情页的「关联用户组」页签,点「新增用户组角色绑定」:

  • 选中 alice-group;
  • 关联集群:选 prod-cluster(不选「任意」—— 只有这一个集群);
  • 关联名称空间:选 alice-ns(同样不选「任意」—— 只有这一个名称空间)。

点「确定」后,绑定列表出现一行:作用域为 prod-cluster / alice-ns。

第五步:添加用户到用户组 ​

在用户组详情页的「关联用户」页签,点「新增用户组成员」:

  • 选中 alice;
  • 点「确定」。

至此,用户 alice 通过组 alice-group 获得了 alice-namespace-viewer 角色在 prod-cluster / alice-ns 下的权限。

第六步:登录验证 ​

让 alice 在浏览器中打开 Kuboard 登录页,用 alice / Kuboard123 登录:

  1. 首次登录被要求修改密码,输入新密码提交;
  2. 进入首页,左侧菜单的「集群」列表中应能看到 prod-cluster;
  3. 进入 prod-cluster → 资源列表,能看到 alice-ns,点击进入应能看到 Pod、Deployment 等资源;
  4. 进入其他名称空间(如 kube-system)应被拒(403 / 资源不存在)。

如果看不到 prod-cluster,通常是绑定作用域没覆盖:回到角色详情页「关联用户组」页签检查「关联集群」/「关联名称空间」是否正确。

用了多个角色怎么检查

用户的最终权限是多角色绑定的并集。在用户详情页「拥有权限」页签可看到完整推导后的授权明细,悬停可见每条权限的来源角色。排查顺序:用户是否在组内 → 组-角色绑定存在且启用 → 绑定作用域覆盖目标集群 / 名称空间 → 角色权限齐全。

完整文档 ​

接口文档 ​

本节涉及的接口详见 Swagger UI 的「权限管理接口」分组。