用户指南

授权模式对比

最近更新时间:2020-07-09 11:53:05

腾讯云容器服务 TKE 目前存在新旧两种授权模式,旧的授权模式无法进行 Kubernetes 级别的授权管理,建议您升级集群管理的授权模式,以便能够对集群内 Kubernetes 资源进行细粒度的权限控制。

新旧模式对比

对比项 旧模式 新模式
Kubeconfig admin token 子账号独立的 x509 证书
控制台访问集群资源 无细粒度权限,子账号具备全读写权限 对接 Kubernetes RBAC 资源控制

存量集群授权模式升级操作

升级授权模式

若使用旧授权模式的集群需要升级时,请参考以下操作步骤进行升级:

  1. 登录容器服务控制台,选择左侧导航栏中的【集群】。
  2. 在“集群管理”页面中,选择需升级的集群 ID。
  3. 在集群详情页面中,选择左侧【授权管理】>【ClusterRole】。
  4. 在 “ClusterRole” 管理页面中,单击【RBAC策略生成器】。
  5. 在弹出的“切换权限管理模式”窗口中,单击【切换权限管理模式】即可进行授权模式升级。如下图所示:

    为确保新旧模式的兼容性,升级过程中会进行如下操作:
    1. 创建默认预设管理员 ClusterRole:tke:admin
    2. 拉取子账号列表。
    3. 为每个子账号生成可用于 Kubernetes APIServer 认证的 x509 客户端证书。
    4. 为每个子账号都绑定 tke:admin 角色(确保和存量功能兼容)。
    5. 升级完毕。

回收子账号权限

集群授权模式升级完毕后,集群管理员(通常为主账号管理员或创建集群的运维人员)可按需对具有该集群权限的子账号进行权限回收操作,步骤如下:

  1. 选择集群【授权管理】下的菜单项,在对应的管理页面中单击【RBAC策略生成器】。
  2. 在“管理权限”页面的“选择子账号”步骤中,勾选需回收权限的子账号并单击【下一步】。如下图所示:
  3. 在“集群RBAC”步骤中,设置权限。例如,“权限设置”选择为命名空间 “default” 下的“只读用户”。如下图所示:
  4. 单击【完成】即可完成回收操作。

确认子账号权限

当完成子账号回收操作后,您可通过以下步骤进行确认:

  1. 选择左侧的【授权管理】>【ClusterRoleBinding】,进入 “ClusterRoleBinding” 管理页面。
  2. 选择被回收权限的子账号名称,进入 YAML 文档页面。
    子账号默认为 tke:admin 权限,回收对应权限后,可在 YAML 文件中查看变更。如下图所示:

新授权模式相关问题

在新授权模式下创建的集群,谁具备管理员 admin 权限?

集群的创建者及主账号始终具备 tke:admin ClusterRole 的权限。

当前使用账号是否可控制自身权限?

目前不支持通过控制台操作当前使用账号权限,如需进行相关操作,可通过 kubectl 完成。

是否可以直接操作 ClusterRoleBinding 及 ClusterRole?

请勿直接对 ClusterRoleBinding 及 ClusterRole 进行修改或删除等操作。

客户端证书是如何创建的?

当您使用子账号通过控制台访问集群资源时,TKE 会获取该子账号的客户端证书。若未获取到证书,则会为该子账号创建客户端证书。

在访问管理 CAM 中删除了子账号,相关权限会自动回收吗?

支持权限自动回收,您无需再进行相关操作。

如何授权其他账户“授权管理”的权限?

可使用默认管理员角色 tke:admin 进行“授权管理”的授权操作。

目录