详情页标题前

阿里云容器服务ACK配置RAM用户或RAM角色RBAC权限-云淘科技

详情页1

RBAC(Role-Based Access Control)是基于角色的访问控制。通过RBAC,您可以将权限与集群角色相关联,从而为不同角色成员配置不同的权限策略,降低账号安全风险。本文介绍如何为RAM用户(子账号)或RAM角色配置对应的Kubernetes集群内RBAC权限

索引

  • 配置说明

  • RAM用户或RAM角色授予RBAC权限

  • 通过RAM用户或RAM角色为其他账号授予RBAC权限

  • 将RAM用户或RAM角色设置为权限管理员

  • 无权限错误码说明

  • 相关文档

配置说明

配置项

说明

默认权限

  • 默认情况下,仅阿里云账号(即主账号)和集群创建者账号拥有集群内Kubernetes资源的管理员权限。

  • 默认情况下,RAM用户或RAM角色(非集群创建者)没有集群内任何Kubernetes资源的访问权限。

授权方式

  • 方式一:使用容器服务提供的预置角色,即管理员(拥有集群内全部Kubernetes资源访问权限)、运维人员、开发人员、受限用户和自定义角色,来对目标RAM用户或RAM角色进行授权。具体操作,请参见为RAM用户或RAM角色授予RBAC权限。

  • 方式二:在所有集群维度为RAM用户或RAM角色进行一键授权,后续新创建的集群也会为被授权的RAM用户或RAM角色自动绑定已经授权的预置角色。具体操作,请参见为RAM用户或RAM角色授予RBAC权限。

  • 方式三:通过RAM用户或RAM角色给其他RAM用户或RAM角色进行RBAC授权。授权时,控制台会过滤其可以授权的集群和命名空间的资源范围,仅当RAM用户或RAM角色有指定集群或命名空间的管理员或cluster-admin角色权限时,才可以给其他RAM用户或RAM角色进行RBAC授权。具体操作,请参见将RAM用户或RAM角色设置为权限管理员、通过RAM用户或RAM角色为其他账号授予RBAC权限。

说明

开始授权前,请先确保目标RAM用户或RAM角色在RAM管理控制台中已被授予指定集群的RAM只读权限。

授权模式

支持对多个目标RAM用户或RAM角色进行单个和批量授权。

说明

由于阿里云RAM的安全限制,当您通过容器服务控制台修改RAM用户或RAM角色的RAM授权时,请按照页面提示的参考策略内容和操作说明在RAM控制台为目标RAM用户或RAM角色进行手动授权。

为RAM用户或RAM角色授予RBAC权限

  1. 登录容器服务管理控制台,在左侧导航栏选择授权管理

  2. 授权管理页面的选择RAM用户配置向导,配置管理权限。

    • 为RAM用户授权

      单击RAM 用户页签,在RAM用户列表,单击目标RAM用户右侧的管理权限,进入权限管理页面。

    • 为RAM角色授权

      单击RAM 角色页签,输入RAM 角色名称后单击管理权限,进入权限管理页面。

    说明

    如果您需要使用RAM用户或RAM角色进行授权,请确保该RAM用户或RAM角色已完成集群的RAM授权(请参见自定义RAM授权策略),同时已被授予集群内RBAC管理员权限或cluster-admin角色。

  3. 单击添加权限,为目标RAM用户或RAM角色添加集群命名空间级别的权限配置,并选择相应的预置角色,然后单击提交授权

    说明

    • ACK预置角色包括管理员、运维人员、开发人员和受限用户4种标准的访问权限,可满足大部分用户在容器服务控制台上的使用需求。如果您想自由定义集群的访问权限,可选择ACK内置的自定义角色,使用自定义权限功能。

    • 在一个目标集群或命名空间中为RAM用户或RAM角色的授权时,支持配置一个预置角色,多个自定义角色。

    • 如果您希望在所有集群维度为RAM用户或RAM角色进行一键授权,使得后续新创建的集群也会为被授权的RAM用户或RAM角色自动绑定已经授权的预置角色,您可以选择集群所有集群

    展开查看预置角色权限说明

    预置角色

    集群内RBAC权限

    管理员

    对所有命名空间下所有资源的读写权限。

    运维人员

    对所有命名空间下控制台可见Kubernetes资源的读写权限,对集群节点、存储卷、命名空间、配额的只读权限。

    开发人员

    对所有命名空间或所选命名空间下控制台可见Kubernetes资源的读写权限。

    受限用户

    对所有命名空间或所选命名空间下控制台可见Kubernetes资源的只读权限。

    自定义

    权限由您所选择的ClusterRole决定,请在确定所选ClusterRole对各类资源的操作权限后再进行授权,以免RAM用户或RAM角色获得不符合预期的权限。您可以参考下文,展开查看如何查看自定义权限。

    重要

    RAM用户或RAM角色被授予cluster-admin权限后,在该集群内可视为与阿里云账号有相同权限的超级账号,拥有操作集群内所有资源的任意权限。请谨慎授予。

    展开查看如何查看自定义权限

    登录集群节点,执行以下命令,查看自定义权限的详情。

    kubectl get clusterrole

    预期输出:

    NAME                                                                   AGE
    admin                                                                  13d
    alibaba-log-controller                                                 13d
    alicloud-disk-controller-runner                                        13d
    cluster-admin                                                          13d
    cs:admin                                                               13d
    edit                                                                   13d
    flannel                                                                13d
    kube-state-metrics                                                     22h
    node-exporter                                                          22h
    prometheus-k8s                                                         22h
    prometheus-operator                                                    22h
    system:aggregate-to-admin                                              13d
    ....  
    system:volume-scheduler                                                13d
    view                                                                   13d         

    以超级管理员cluster-admin为例,执行以下命令,查看其权限详情。

    重要

    RAM用户或RAM角色被授予cluster-admin权限后,在该集群内可视为与阿里云账号有相同权限的超级账号,拥有操作集群内所有资源的任意权限。请谨慎授予。

    kubectl get clusterrole cluster-admin -o yaml

    预期输出:

    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRole
    metadata:
      annotations:
        rbac.authorization.kubernetes.io/autoupdate: "true"
      creationTimestamp: 2022-12-30T08:31:15Z
      labels:
        kubernetes.io/bootstrapping: rbac-defaults
      name: cluster-admin
      resourceVersion: "57"
      selfLink: /apis/rbac.authorization.k8s.io/v1/clusterroles/cluster-admin
      uid: 2f29f9c5-cdf9-11e8-84bf-00163e0b2f97
    rules:
    - apiGroups:
      - '*'
      resources:
      - '*'
      verbs:
      - '*'
    - nonResourceURLs:
      - '*'
      verbs:
      - '*'
  4. 提交授权后,根据页面提示进行操作。

    • 如果出现授权成功的提示,表示该RAM用户或RAM角色已被授予RAM权限,RBAC授权成功,操作结束。

    • 如果出现报错,表示该RAM用户或RAM角色未被授予RAM权限。请按照页面提示,通过RAM控制台对RAM用户或RAM角色授予指定集群的只读权限。

      1. 提交授权页面,单击去授权,然后单击确认授权快速完成授权,待授权完成后,关闭该页面。

      2. 提交授权页面,重新单击提交授权,将弹出授权成功的提示。

    配置完成后,您可以使用目标RAM用户或RAM角色登录容器服务控制台,并进行相关操作。

通过RAM用户或RAM角色为其他账号授予RBAC权限

默认情况下,RAM用户或RAM角色不具备对其他RAM用户或RAM角色进行RBAC授权的能力。如果您需要通过某个RAM用户或RAM角色为其他账号进行RBAC授权,您需要使用阿里云账号或具备所有集群RBAC管理员角色的RAM用户为该RAM用户或RAM角色授予所需的RAM权限和RBAC权限。

RAM权限

您需要给该RAM用户或RAM角色授予相应的RAM权限策略,策略包括以下内容:

  • 查看其他RAM账号。

  • 授予RAM权限策略。

  • 查看集群信息。

  • 查看RBAC权限配置。

  • RBAC授权能力。

登录RAM管理控制台,参考以下代码示例,为该RAM用户或RAM角色授予所需的RAM权限。更多信息请参见自定义RAM授权策略。

说明

请将xxxxxx替换为需要绑定的RAM策略的名称。替换为 *,表示RAM用户或RAM角色拥有所有RAM策略的授权绑定能力。

{
    "Statement": [{
            "Action": [
                "ram:Get*",
                "ram:List*",
                "cs:Get*",
                "cs:Describe*",
                "cs:List*",
                "cs:GrantPermission"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ram:AttachPolicyToUser",
                "ram:AttachPolicy"
            ],
            "Effect": "Allow",
            "Resource":  [
                "acs:ram:*:*:policy/xxxxxx",
                "acs:*:*:*:user/*"
            ]
        }
    ],
    "Version": "1"
}

授权完成后,该RAM用户或RAM角色可以在指定策略范围内对其他RAM用户或RAM角色进行RAM授权。

RBAC权限

授予所需的RAM权限后,您还需要为该RAM用户或RAM角色在目标集群或命名空间上授予预置角色管理员或者自定义权限策略中的cluster-admin角色。具体操作,请参见为RAM用户或RAM角色授予RBAC权限。

将RAM用户或RAM角色设置为权限管理员

如果您不方便使用阿里云账号为RAM用户或RAM角色进行RBAC授权,您可以将某个RAM用户或RAM角色设置为权限管理员,后续使用该RAM用户或RAM角色进行授权操作。

  1. 登录RAM管理控制台,定位目标RAM用户或RAM角色。

    • RAM用户

      选择身份管理 > 用户,在用户列表的操作列,单击添加权限

    • RAM角色

      选择身份管理 > 角色,在角色列表的操作列,单击添加权限

  2. 添加权限面板,选择授权范围,然后选择权限为系统策略,根据名称搜索或在列表中找到并单击AliyunRAMReadOnlyAccess和AliyunCSFullAccess系统策略,将该策略移动到右侧的已选择区域,然后单击确定。权限成功添加后,单击完成

  3. 使用阿里云账号登录容器服务管理控制台,为该RAM用户或RAM角色在所有集群维度授予预置角色管理员

    具体操作,请参见为RAM用户或RAM角色授予RBAC权限。

    完成上述步骤后,该RAM用户或RAM角色成为一个权限管理员,拥有给其他RAM用户或RAM角色进行RAM授权和RBAC授权的能力。

无权限错误码说明

当您通过控制台或OpenAPI所做的部分操作缺少所需的RBAC权限时,控制台或OpenAPI将返回相应的无权限错误码。各个错误码对应操作所需的集群RBAC权限说明如下表所示。

错误码或错误信息

所需的集群RBAC权限

ForbiddenCheckControlPlaneLog

管理员或运维人员权限。

ForbiddenHelmUsage

管理员权限。

ForbiddenRotateCert

管理员权限。

ForbiddenAttachInstance

管理员或运维人员权限。

ForbiddenUpdateKMSState

管理员或运维人员权限。

Forbidden get trigger

管理员、运维人员或开发人员权限。

ForbiddenQueryClusterNamespace

管理员、运维人员、开发人员或受限用户权限。

相关文档

  • 自定义RAM授权策略

  • 容器服务默认角色

  • 授权最佳实践

  • 授权管理FAQ

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/167934.html

(0)
上一篇 2023年12月10日 上午10:39
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云大数据开发治理平台 DataWorks开通DataWorks服务-云淘科技

    您必须购买任意版本DataWorks产品和按量付费商品,才可以开通并使用DataWorks服务,本文为您介绍如何开通DataWorks。 背景信息 开通DataWorks服务前,建议您先了解以下内容。 DataWorks的计费要点和各功能模块的软件费用说明,详情请参见计费逻辑说明。 DataWorks典型用户使用场景的选购指引,详情请参见购买指引。 更多Da…

  • 阿里云ECS云服务器在阿里云客户端添加账号-云淘科技

    在使用阿里云客户端查看和管理您的资源(云服务器ECS、弹性容器实例ECI、轻量应用服务器和阿里云托管实例)之前,您需要先在阿里云客户端上添加阿里云账号信息。 操作步骤 重要 您可以添加一个或多个阿里云账号,并在使用时按需切换阿里云账号。 如果您在使用阿里云CLI的过程中配置了阿里云账号信息,阿里云客户端会自动导入该配置。更多信息,请参见什么是阿里云CLI?。…

    2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云云原生大数据计算服务 MaxCompute准备阿里云账号-云淘科技

    在使用MaxCompute产品前,您需要准备好阿里云账号。本文为您介绍如何创建阿里云账号并完成账号相关准备工作。 步骤一:注册阿里云账号 打开阿里云官网。 在阿里云官网右上角,单击立即注册。 在注册账号页面,按照操作提示完成账号注册。创建成功的阿里云账号,会作为阿里云系统识别的资源消费账户,阿里云账号拥有该账户的所有权限。重要 为保证账号和密码的安全性,请勿…

  • 阿里云ECS云服务器云市场镜像部署SQL Server数据库-云淘科技

    微软SQL Server数据库在2016版本之前,只支持在Windows操作系统上运行安装,因此本教程只介绍如何在Windows系统的ECS实例上使用云市场镜像部署SQL Server数据库。 前提条件 已注册阿里云账号。如还未注册,请先完成账号注册。 已在安全组中添加安全组规则放行1433、1434端口,具体操作请参见添加安全组规则。 操作步骤 登录ECS…

    2023年12月9日
  • 阿里云容器服务ACK为RAM用户授权-云淘科技

    RAM用户被授权后,才可以进行创建ACK One主控实例、添加或删除关联集群、删除ACK One主控实例等操作。本文介绍如何为RAM用户授予RAM权限和RBAC权限。 索引 前提条件 授权说明 步骤一:为RAM用户授予RAM权限 步骤二:为RAM用户授予主控实例的RBAC权限 相关操作 查询RAM用户RBAC权限 取消RAM用户RBAC权限 前提条件 已安装…

    阿里云容器服务 2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。