子账号使用Kubernetes集群权限问题

更新时间:

问题描述

使用子账号登录控制台访问容器集群时,提示如下错误。已确认该子账号拥有容器服务产品的Full权限。

说明:Full权限对应的是AliyunCSFullAccess策略

您没有权限进行当前操作。如果您是子账号用户,请联系主账号进行授权。

问题原因

子账号的RBAC授权异常。本问题中的子账号为RAM授权。如果报类似如下的错误,则通常为RBAC授权的问题。RBAC授权详细内容可以参考Kubernetes官网的Using RBAC Authorization文档。

说明:子账号的集群权限分为如下两类。

  • RAM授权:AliyunCSFullAccess策略包含容器服务产品的全部权限,如新建集群等操作,但该权限与具体某个集群的权限是不同的。
  • RBAC授权:Kubernetes的RBAC授权会在请求集群自身的资源时会用到,例如Pod内访问ApiServer时使用到的ServiceAccount。
Error from server (Forbidden): nodes is forbidden: User "XXX" cannot list nodes at the cluster scope

解决方案

需要对子账号授权对应集群的RBAC权限,可参考子账号RBAC权限配置指导文档的 自定义授权说明 章节进行配置。

说明子账号RBAC权限配置指导 文档分为两部分,前半部分说明RAM授权,后半部分说明RBAC授权。

适用于

  • 容器服务 Kubernetes 专有版
  • 容器服务 Kubernetes 托管版