You need to enable JavaScript to run this app.
导航
权限管理(new)
最近更新时间:2025.04.15 21:29:23首次发布时间:2025.04.15 21:29:23
我的收藏
有用
有用
无用
无用

当您业务有不同角色分工时,可以参考下面内容为不同角色使用的账号授予合适的权限,保障权限层面安全合理。

创建子账号并授权操作可参考文档

资源管理员

当子用户作为资源管理员,需要运维机器学习平台(veMLP)上的资源时,需要的权限主要涉及:

  • 全局配置:配置 veMLP 上的配套云基础资源,如私有网络 VPC、镜像仓库 CR、文件存储 vePFS 或 CloudFS、日志服务 TLS 以及监控 VMP。
  • 资源组:veMLP 上的资源创建及生命周期管理模块,需支付资源购置费用,配置与该资源关联的云网络、存储等资源。
  • 队列:veMLP 上的资源管理模块,可通过该模块为每个组以及个人用户分配资源配额,同时它也是 veMLP 平台的权限中心。 当只有队列的使用权限时,才能创建其他的负载作业。队列管理员可以直接管理队列内所有负载的生命周期。
  • 负载:开发机、自定义任务和推理服务的管理权限。

因此在 veMLP 上的资源管理员子用户,为了使用的连续性建议,授予以下权限:

  • MLPlatformAdminAccess:机器学习平台(veMLP)管理员权限。
  • IAMFullAccess:访问控制(IAM)管理员权限。
  • CRFullAccess:镜像仓库(CR)管理员权限。
  • TOSFullAccess:对象存储(TOS)管理员权限。
  • TLSFullAccess:日志服务(TLS)管理员权限。
  • VMPFullAccess:托管Prometheus服务(VMP)管理员权限。
  • CFSFullAccess:大数据文件存储(CLoudFS)管理员权限。(如果使用 CLoudFS 产品)
  • vePFSFullAccess:文件存储(vePFS)管理员权限。(如果使用 vePFS 产品)

MLPlatformAdminAccess 预设策略

{
  "Statement": [
    {
      "Action": [
        "tos:HeadBucket",
        "tos:PutObject",
        "tos:GetObject",
        "tos:ListBucketMultipartUploads",
        "tos:ListMultipartUploadParts",
        "tos:ListBucket",
        "tos:ListBuckets",
        "tos:CreateBucket",
        "cfs:DescribeSfcsCachePolicies",
        "vepfs:List*",
        "vepfs:Describe*",
        "vepfs:Get*",
        "vpc:Describe*",
        "FileNAS:Get*",
        "FileNAS:List*",
        "ml_platform:*",
        "ml_maas:GetMaasRuntimeConfig"
      ],
      "Effect": "Allow",
      "Resource": [
        "*"
      ]
    }
  ]
}

算法开发人员

当子用户只需要在机器学习平台(veMLP)上开发、训练和推理模型时,可以只需要完成开发人员的权限。以下权限主要涉及:

  • 队列:队列内资源的使用权限。
  • 负载:开发机、自定义任务和推理服务的创建和运维权限。

因此在 veMLP 上的资源管理员子用户,为了使用的连续性建议授予以下权限:

  • MLPlatformDeveloperAccess:机器学习平台(veMLP)算法开发人员权限。

MLPlatformDeveloperAccess 预设策略

veMLP 的开发人员预设策略,授予该策略的子用户将拥有开发机、自定义任务、推理服务和部署的读写权限(仅限自己创建的);也将授予镜像、实验管理等模块的 Get、List 等接口权限。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ml_platform:SignJwtToken",
        "ml_platform:JoinResourceQueue",
        "ml_platform:Get*",
        "ml_platform:List*",
        "ml_platform:Check*",
        "ml_platform:Describe*",
        "ml_platform:*Pipeline*",
        "ml_platform:*Asset*",
        "ml_platform:*Dataset*",
        "ml_platform:*Model*",
        "ml_platform:*AutoScaler*",
        "ml_platform:*Annotation*",
        "ml_platform:*TensorBoard*",
        "ml_platform:*Profile*",
        "ml_platform:*Tracking*",
        "ml_platform:*Image*",
        "ml_platform:*Rule*",
        "ml_platform:*Suspected*",
        "ml_platform:*Idle*"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "ml_platform:*DevInstance*",
        "ml_platform:*Job*",
        "ml_platform:*Customtask*",
        "ml_platform:*Service*",
        "ml_platform:*Deployment*",
        "ml_platform:*ResourceQueue*",
        "ml_platform:*ResourceGroup*"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringEquals": {
          "volc:PrincipalTrn": "${volc:ResourceTag/sys:ml_platform:createdby}"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "FileNAS:Get*",
        "FileNAS:List*",
        "FileNAS:Describe*",
        "cfs:DescribeSfcsCachePolicies",
        "vpc:Describe*",
        "vepfs:List*",
        "vepfs:Describe*",
        "vepfs:Get*",
        "cr:List*",
        "cr:Get*",
        "apig:Get*",
        "apig:List*",
        "quota:Get*",
        "vmp:List*",
        "vmp:Get*",
        "tos:GetObject",
        "tos:HeadBucket",
        "tos:AbortMultipartUpload",
        "tos:PutObject",
        "tos:ListBucketMultipartUploads",
        "tos:PutBucketCORS",
        "tos:ListMultipartUploadParts",
        "tos:ListBuckets",
        "tos:CreateBucket"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}

队列权限管理

队列是机器学习平台资源配额管理的模块,若子用户需要使用资源来创建各种负载时,需要先加入队列中(管理员或成员皆可)。下边解释一下队列的角色定义:

  • 队列管理员:队列资源的管理者,可以管理队列成员、空闲资源出借、队列内成员的负载声明周期。
  • 队列成员:可以使用队列内的资源创建负载。

创建队列&配置用户权限

  • 前提条件
    • 需要有 MLPlatformAdminAccess 权限
    • 需要有 IAMFullAccess 权限(若该权限比较大,可以配置自定义策略,参考 管理员自定义策略
    • 有运行中的资源组

步骤

操作介绍

Step1

完成队列的基础信息

  • 队列名称
  • 负载类型
  • 空闲资源出借(同资源组下空闲资源的抢占)
  • 队列资源分配

Image

Step2

分配队列权限

  • 在首次创建资源组时,需要同时指定管理员和成员;支持选择用户或者用户组。
    • 若选择的是用户时,平台将会自动创建用户组,并将所选用户加入到用户组中。
      • 管理员用户组命名:q-xxx-admin-group。
      • 成员用户组命名:q-xxx-developer-group。
  • 在给所选用户/用户组授权时,平台将依次执行以下操作:
    • 创建用户组(当选择用户时,执行该操作)。
    • 创建自定义策略。
    • 将自定义策略授权给用户组。
    • 完成创建和授权。
  • 队列的自定义策略
    • 在创建队列时,平台将自动创建 IAM 自定义策略,并对所选用户组完成策略授权。
    • 管理员自定义策略命名:q-xxx-admin-policy。
    • 成员自定义策略命名:q-xxx-developer-policy。

Image

Step3

管理用户用量上限

  • 在队列详情页可以编辑用户的用量上限,支持百分比和绝对值两种。

Image

说明

请注意,资源管理员需主动为队列管理员的成员添加 IAM 相关策略,否则队列管理员将无法正常编辑队列内成员。

管理用户权限

在队列创建后,若需要管理队列内管理员和成员的列表,可以通过编辑【管理用户】实现。

说明

目前暂不支持直接在访问控制中添加用户或策略。若有队列成员维护需求,请继续在 veMLP 控制台上进行操作。

  • 操作前提
    • 操作者是队列的管理员
    • 操作者应具备 IAMFullAccess 权限(若该权限范围较广,可配置自定义策略,具体可参考 MLP 的权限管理

步骤

操作介绍

Step1

  • 点击【管理用户】,进入权限编辑页面
  • 选择要增加或者移除的用户/用户组
  • 完成后保存页面即可

Image

队列管理员和成员权限介绍

管理员策略

权限说明:

  1. 队列管理员有队列下任意负载的读写权限。
  2. 队列管理员有队列的读写权限。
  3. 在授权队列管理员时,新增管理员将会被授予 IAM 的部分权限用于管理队列。
{
    "Statement": [
      {
        "Effect": "Allow",
        "Action": [
          "ml_platform:*DevInstance*",
          "ml_platform:*Job*",
          "ml_platform:*Service*",
          "ml_platform:*Deployment*",
          "ml_platform:*CustomTask*"
        ],
        "Resource": [
          "trn:ml_platform:cn-beijing:2100xxx:devinstance/*",
          "trn:ml_platform:cn-beijing:2100xxx:job/*",
          "trn:ml_platform:cn-beijing:2100xxx:service/*",
          "trn:ml_platform:cn-beijing:2100xxx:deployment/*"
        ],
        "Condition": {
          "StringEquals": {
            "volc:ResourceTag/sys:ml_platform:resource_queue_id": "q-202504xxx7-txxxx"
          }
        }
      },
      {
        "Effect": "Allow",
        "Action": [
          "ml_platform:*DevInstance*",
          "ml_platform:*Job*",
          "ml_platform:*Service*",
          "ml_platform:*Deployment*",
          "ml_platform:*CustomTask*",
          "ml_platform:*ResourceQueue*"
        ],
        "Resource": [
          "trn:ml_platform:cn-beijing:2100xxx:resourcequeue/q-202504xxx7-txxxx"
        ]
      },
      {
        "Effect": "Allow",
        "Action": [
          "iam:AddUserToGroup",
          "iam:RemoveUserFromGroup",
          "iam:ListUsersForGroup",
          "iam:ListGroups",
          "iam:ListUsers",
          "iam:GetGroup",
          "iam:GetPolicy",
          "iam:AttachUserGroupPolicy",
          "iam:DetachUserGroupPolicy",
          "iam:ListEntitiesForPolicy"
        ],
        "Resource": [
          "*"
        ]
      }
    ]
  }

成员策略

队列成员,可以使用该队列创建任意负载(队列需要支持该负载选项),并有对应负载创建者的读写权限。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ml_platform:*DevInstance*",
        "ml_platform:*Job*",
        "ml_platform:*Service*",
        "ml_platform:*Deployment*",
        "ml_platform:*CustomTask*"
      ],
      "Resource": [
        "trn:ml_platform:cn-beijing:2100xxx:resourcequeue/q-202504xxx7-txxxx"
      ]
    }
  ]
}

自定义策略

队列创建者 IAM 策略

IAMFullAccess 权限过大,可考虑创建新的自定义策略并完成授权。

  • 前往【访问控制】-【策略】,点击【新建自定义策略】,完成如下的策略配置。
  • 将该策略授权给队列管理员。
{
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iam:GetGroup",
                "iam:AddUserToGroup",
                "iam:CreateGroup",
                "iam:AttachUserGroupPolicy",
                "iam:CreatePolicy",
                "iam:DetachUserGroupPolicy",
                "iam:GetPolicy",
                "iam:RemoveUserFromGroup",
                "iam:GetUser",
                "iam:ListUsers",
                "iam:ListGroups",
                "iam:ListUsersForGroup",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserGroupPolicies",
                "iam:ListAttachedUserPolicies"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

更换资源 Owner 策略

若在资源创建后,只想授予某个用户特定资源的权限时,可以通过自定义策略实现。(也可以选择将目标用户设置为队列管理员,有队列内所有负载的读写权限。)

  • 前往【访问控制】-【策略】,点击【新建自定义策略】。
  • 修改 资源动作、账号 Id、资源名称和资源 Id。
  • 将策略授权给特定子用户。

资源名称

动作

resourcegroup

ResourceGroup

service

Service

deployment

Deployment

devinstance

DevInstance

job

v2: Job
v1: CustomTask

resourcequeue

ResourceQueue

{
      "Effect": "Allow", 
      "Action": [
        "ml_platform:*DevInstance*" // 动作 
      ],
      "Resource": [
         // 标黄部分 {region}:{accountId}:{资源名称}:{资源id}
        "trn:ml_platform:cn-beijing:2100xxx:devinstance/di-202503xxxx2-gtxxxj"
      ]
}