更新时间:2024-09-14 gmt 08:00

给子账号配置训练作业基本使用权限-九游平台

场景描述

本文介绍训练作业场景下子账号所需的基本使用权限,您可参考权限清单新增对应业务场景的权限。示例场景为授权子账号使用自定义镜像训练,数据和代码存放在obs桶中。以下内容需使用管理账号进行配置。

权限清单

  • 权限
    表1 训练作业所需权限

    业务场景

    依赖的服务

    依赖策略项

    支持的功能

    配置建议

    训练管理

    modelarts

    modelarts:trainjob:*

    modelarts:trainjoblog:*

    modelarts:aialgorithm:*

    modelarts:image:list

    modelarts:network:get

    modelarts:workspace:get

    创建训练作业和查看训练日志。

    建议配置。

    仅在严格授权模式开启后,需要显式配置左侧权限。

    modelarts:workspace:getquotas

    查询工作空间配额。如果开通了工作空间功能,则需要配置此权限。

    按需配置。

    modelarts:tag:list

    在训练作业中使用标签管理服务tms。

    按需配置。

    iam

    iam:credentials:listcredentials

    iam:agencies:listagencies

    使用配置的委托授权项。

    按需配置。

    sfs turbo

    sfsturbo:shares:getshare

    sfsturbo:shares:getallshares

    在训练作业中使用sfs turbo。

    按需配置。

    swr

    swr:repository:listtags

    swr:repository:getrepository

    swr:repository:listrepositories

    若为企业swr用户,还需要增加以下权限:

    swr:repository:gettag

    swr:instance:createtempcredential

    swr:repository:listtags

    swr:repository:getrepository

    swr:repository:listrepositories

    使用自定义镜像运行训练作业。

    按需配置。

    smn

    smn:topic:publish

    smn:topic:list

    通过smn通知训练作业状态变化事件。

    按需配置。

    obs

    obs:bucket:listallmybuckets

    obs:bucket:headbucket

    obs:bucket:listbucket

    obs:bucket:getbucketlocation

    obs:object:getobject

    obs:object:getobjectversion

    obs:object:putobject

    obs:object:deleteobject

    obs:object:deleteobjectversion

    obs:object:listmultipartuploadparts

    obs:object:abortmultipartupload

    obs:object:getobjectacl

    obs:object:getobjectversionacl

    obs:bucket:putbucketacl

    obs:object:putobjectacl

    obs:object:modifyobjectmetadata

    使用obs桶中的数据集运行训练作业。

    按需配置。

  • 委托
    表2 训练作业所需委托

    业务场景

    依赖的服务

    委托授权项

    说明

    配置建议

    训练作业

    obs

    obs:bucket:listbucket

    obs:object:getobject

    obs:object:putobject

    训练作业启动前下载数据、模型、代码。

    训练作业运行中上传日志、模型。

    建议配置。

操作步骤

本案例场景为单机单卡场景下创建训练作业,数据和代码存储在obs服务的并行文件系统下,创建自定义镜像训练作业。

  1. 使用主用户账号登录管理控制台,单击右上角用户名,在下拉框中选择“统一身份认证”,进入统一身份认证(iam)服务。
  2. 添加训练作业使用权限。在统一身份认证服务页面的左侧导航选择权限管理 > 权限,单击右上角的“创建自定义策略”,设置策略。
    • “策略名称”:设置自定义策略名称,例如:trainjob。
    • “策略配置方式”:选择json视图。
    • “策略内容”:填入如下内容。
      {
          "version": "1.1",
          "statement": [
              {
                  "effect": "allow",
                  "action": [
                      "modelarts:trainjob:*",
                      "modelarts:trainjoblog:*",
                      "modelarts:aialgorithm:*",
                      "modelarts:image:list",
                      "modelarts:pool:list",
                      "swr:repository:listtags",
                      "swr:repository:getrepository",
                      "swr:repository:listrepositories"
                  ]
              }
          ]
      }
  3. 添加依赖服务obs权限。

    在统一身份认证服务页面的左侧导航选择权限管理 > 权限,单击右上角的“创建自定义策略”,设置策略。

    • “策略名称”:设置自定义策略名称,例如:trainjob-obs。
    • “策略配置方式”:json视图。
    • “策略内容”:填入如下内容。
      {
          "version": "1.1",
          "statement": [
              {
                  "effect": "allow",
                  "action": [
                      "obs:object:getobject",
                      "obs:object:deleteobjectversion",
                      "obs:bucket:getbucketlocation",
                      "obs:object:abortmultipartupload",
                      "obs:object:putobjectacl",
                      "obs:object:deleteobject",
                      "obs:bucket:headbucket",
                      "obs:bucket:putbucketacl",
                      "obs:object:putobject",
                      "obs:object:getobjectversionacl",
                      "obs:bucket:listallmybuckets",
                      "obs:object:listmultipartuploadparts",
                      "obs:object:modifyobjectmetadata",
                      "obs:bucket:listbucket",
                      "obs:object:getobjectversion",
                      "obs:object:getobjectacl"
                  ]
              }
          ]
      }

      创建自定义策略时,建议将项目级云服务和全局级云服务拆分为两条策略,便于授权时设置最小授权范围。此处的“trainjob”为项目级云服务、“trainjobobs”为全局级云服务。了解更多

  4. 创建用户组并加入用户,步骤请参考step1 创建用户组并加入用户
  5. 给用户组授权策略。

    在iam服务的用户组列表页面,单击“授权”,进入到授权页面,为子账号配置权限。勾选“trainjob”和“trainjob-obs”策略。单击“下一步”和“确定”。

  6. 为子账号添加镜像组织管理授权。

    登录容器镜像服务控制台。在左侧菜单栏选择“组织管理”,单击组织名称。在“用户”页签下单击“添加授权”,在弹出的窗口中为子账号添加“编辑”权限,然后单击“确定”。

  7. 添加modelarts委托授权。
    1. 新建委托授权策略。

      在统一身份认证服务页面的左侧导航选择权限管理 > 权限,单击右上角的“创建自定义策略”,设置策略。

      • “策略名称”:设置自定义策略名称,例如:ma_agency_obs。
      • “策略配置方式”:选择可视化视图或者json视图均可。
      • “策略内容”:填入如下内容。
        {
            "version": "1.1",
            "statement": [
                {
                    "effect": "allow",
                    "action": [
                        "obs:object:getobject",
                        "obs:object:putobject",
                        "obs:bucket:listbucket"
                    ]
                }
            ]
        }
    2. 创建委托。

      在统一身份认证服务页面的左侧导航选择权限管理 > 委托,单击右上角的“创建委托”,设置策略。填写委托信息并单击“下一步”

      • 委托名称:可自定义委托名称,例如:ma_agency_trainjob。
      • 委托类型:选择“云服务”
      • 云服务:选择“modelarts”
      • 持续时间:选择“永久”

      勾选新建的委托策略,然后单击“下一步”。设置最小授权范围选择“所有资源”,然后单击“确定”。

    3. 为子账号配置modelarts委托权限。

      在modelarts服务页面的左侧导航选择权限管理 ,单击“添加授权”。授权对象选择子账号,在已有委托中选择新建的委托,然后单击“创建”。

  8. 验证权限是否配置成功。

    登录子用户账号,如果用户能在控制台上成功创建使用自定义镜像创建训练作业(如),则表示权限配置成功。

相关文档

网站地图