本文档介绍如何创建自定义授权策略。下面以授予子账号查询、扩容和删除集群的权限为例进行说明。

前提条件

在创建自定义授权策略时,您需要了解授权策略语言的基本结构和语法,相关内容的详细描述请参考授权策略语言描述

背景信息

容器服务提供的系统授权策略的授权粒度比较粗,如果这种粗粒度授权策略不能满足您的需要,那么您可以创建自定义授权策略。例如,您想控制对某个具体的集群的操作权限,您必须使用自定义授权策略才能满足这种细粒度要求

操作步骤

  1. 使用具有RAM权限的账号登录RAM管理控制台
  2. 单击左侧导航栏的权限管理 > 权限策略管理,进入权限策略管理页面。
  3. 单击新建授权策略,进入新建自定义权限策略页面。
  4. 填写策略名称配置模式选择脚本配置,并在策略内容中编写您的授权策略内容。

    自定义权限策略
    {
     "Statement": [{
         "Action": [
             "cs:Get*",
             "cs:ScaleCluster",
             "cs:DeleteCluster"
         ],
         "Effect": "Allow",
         "Resource": [
             "acs:cs:*:*:cluster/集群ID"
         ]
     }],
     "Version": "1"
    }
    其中:
    • Action 处填写您所要授予的权限。
      说明 所有的 Action 均支持通配符。
    • Resource 有如下配置方式。
      • 授予单集群权限
        "Resource": [
             "acs:cs:*:*:cluster/集群ID"
         ]
      • 授予多个集群权限
        "Resource": [
             "acs:cs:*:*:cluster/集群ID",
             "acs:cs:*:*:cluster/集群ID"
         ]
      • 授予您所有集群的权限
        "Resource": [
             "*"
         ]
        其中,集群ID 需要替换为您要授权的真实的集群 ID。
  5. 编写完毕后,单击确定
    预期结果
    返回权限策略管理页面,在搜索框中搜索策略名备注,可以看到您授权的自定义的策略。
    权限策略管理

相关参考

表 1. 容器服务RAM Action
Action 说明
CreateCluster 创建集群
AttachInstances 向集群中添加已有ECS实例
ScaleCluster 扩容集群
GetClusters 查看集群列表
GetClusterById 查看集群详情
ModifyClusterName 修改集群名称
DeleteCluster 删除集群
UpgradeClusterAgent 升级集群Agent
GetClusterLogs 查看集群的操作日志
GetClusterEndpoint 查看集群接入点地址
GetClusterCerts 下载集群证书
RevokeClusterCerts 吊销集群证书
BindSLB 为集群绑定负载均衡实例
UnBindSLB 为集群解绑负载均衡实例
ReBindSecurityGroup 为集群重新绑定安全组
CheckSecurityGroup 检测集群现有的安全组规则
FixSecurityGroup 修复集群的安全组规则
ResetClusterNode 重置集群中的节点
DeleteClusterNode 移除集群中的节点
CreateAutoScale 创建节点弹性伸缩规则
UpdateAutoScale 更新节点弹性伸缩规则
DeleteAutoScale 删除节点弹性伸缩规则
GetClusterProjects 查看集群下的应用
CreateTriggerHook 为应用创建触发器
GetTriggerHook 查看应用的触发器列表
RevokeTriggerHook 删除应用的触发器
CreateClusterToken 创建 Token
UpdateClusterTags 编辑集群标签