华为云AI开发平台ModelArts给子用户配置开发环境基本使用权限_云淘科技

场景描述

本文介绍开发环境场景下子用户所需的基本使用权限,您可参考权限清单新增对应业务场景的权限。示例场景为授权子用户使用Notebook进行调试,数据和代码存放在并行文件系统。以下内容需使用管理帐号进行配置。

权限清单

权限

表1 开发环境所需权限

业务场景

依赖的服务

依赖策略项

支持的功能

配置建议

开发环境实例生命周期管理

ModelArts

modelarts:notebook:create

modelarts:notebook:list

modelarts:notebook:get

modelarts:notebook:update

modelarts:notebook:delete

modelarts:notebook:start

modelarts:notebook:stop

modelarts:notebook:updateStopPolicy

modelarts:image:delete

modelarts:image:list

modelarts:image:create

modelarts:image:get

modelarts:pool:list

modelarts:tag:list

modelarts:network:get

aom:metric:get

aom:metric:list

aom:alarm:list

实例的启动、停止、创建、删除、更新等依赖的权限。

建议配置。

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

动态挂载存储配置

ModelArts

modelarts:notebook:listMountedStorages

modelarts:notebook:mountStorage

modelarts:notebook:getMountedStorage

modelarts:notebook:umountStorage

动态挂载存储配置。

按需配置。

OBS

obs:bucket:ListAllMyBuckets

obs:bucket:ListBucket

镜像管理

ModelArts

modelarts:image:register

modelarts:image:listGroup

在镜像管理中注册和查看镜像。

按需配置。

保存镜像

SWR

SWR Admin

SWR Admin为SWR最大权限,用于:

开发环境运行的实例,保存成镜像。
使用自定义镜像创建开发环境Notebook实例。

按需配置。

使用SSH功能

ECS

ecs:serverKeypairs:list

ecs:serverKeypairs:get

ecs:serverKeypairs:delete

ecs:serverKeypairs:create

为开发环境Notebook实例配置登录密钥。

按需配置。

挂载SFS Turbo盘

SFS Turbo

SFS Turbo FullAccess

子用户对SFS目录的读写操作权限。专属池Notebook实例挂载SFS(公共池不支持),且挂载的SFS不是当前子用户创建的。

按需配置。

查看所有实例

ModelArts

modelarts:notebook:listAllNotebooks

ModelArts开发环境界面上,查询所有用户的实例列表,适用于给开发环境的实例管理员配置该权限。

按需配置。

IAM

iam:users:listUsers

VSCode插件(本地)/ PyCharm Toolkit(本地)

ModelArts

modelarts:notebook:listAllNotebooks

modelarts:trainJob:create

modelarts:trainJob:list

modelarts:trainJob:update

modelarts:trainJobVersion:delete

modelarts:trainJob:get

modelarts:trainJob:logExport

modelarts:workspace:getQuotas(若开通了工作空间功能,则需要配置此权限。)

从本地VSCode连接云上的Notebook实例、提交训练作业等。

按需配置。

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

IAM

iam:projects:listProjects

从本地PyCharm查询IAM项目列表,完成连接配置。

VPC接入

VPC

VPC ReadOnlyAccess

实例能够挂载在用户的VPC下,实现多网络平面接入。

按需配置。

创建自定义策略时,建议将项目级云服务和全局级云服务拆分为两条策略,便于授权时设置最小授权范围。

委托

表2 开发环境所需委托

业务场景

依赖的服务

委托授权项

说明

配置建议

JupyterLab

OBS

obs:object:DeleteObject

obs:object:GetObject

obs:object:GetObjectVersion

obs:bucket:CreateBucket

obs:bucket:ListBucket

obs:bucket:ListAllMyBuckets

obs:object:PutObject

obs:bucket:GetBucketAcl

obs:bucket:PutBucketAcl

obs:bucket:PutBucketCORS

通过ModelArts的Notebook,在JupyterLab中使用OBS上传下载数据。

建议配置。

开发环境监控功能

AOM

aom:alarm:put

调用AOM的接口,获取Notebook相关的监控数据和事件,展示在ModelArts的Notebook中。

建议配置。

VPC接入

VPC

vpc:ports:create

vpc:ports:get

vpc:ports:delete

vpc:subnet:get

实例能够挂载在用户的VPC下,实现多网络平面接入。

按需配置。

操作步骤

本案例场景为单机单卡场景下使用Notebook进行代码调试,数据和代码存储在OBS服务的并行文件系统下,调试完成过后可保存镜像。

使用主用户帐号登录管理控制台,单击右上角用户名,在下拉框中选择“统一身份认证”,进入统一身份认证(IAM)服务。
添加开发环境使用权限和依赖服务SWR权限。在统一身份认证服务页面的左侧导航选择“权限管理 > 权限”,单击右上角的“创建自定义策略”,设置策略。

添加开发环境使用权限。

“策略名称”:设置自定义策略名称,例如:notebook。
“策略配置方式”:选择JSON视图。
“策略内容”:填入如下内容。

{
    "Version": "1.1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "modelarts:notebook:create",
                "modelarts:notebook:list",
                "modelarts:notebook:get",
                "modelarts:notebook:update",
                "modelarts:notebook:delete",
                "modelarts:notebook:start",
                "modelarts:notebook:stop",
                "modelarts:notebook:updateStopPolicy",
                "modelarts:notebook:listMountedStorages",
                "modelarts:notebook:mountStorage",
                "modelarts:notebook:getMountedStorage",
                "modelarts:notebook:umountStorage",
                "modelarts:image:delete",
                "modelarts:image:list",
                "modelarts:image:create",
                "modelarts:image:get",
                "modelarts:pool:list",
                "modelarts:tag:list",
                "modelarts:network:get",
                "aom:metric:get",
                "aom:metric:list",
                "aom:alarm:list"
            ]
        }
    ]
}

添加依赖服务OBS权限。

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

“策略名称”:设置自定义策略名称,例如:notebook-obs。
“策略配置方式”:JSON视图。
“策略内容”:填入如下内容。

{
    "Version": "1.1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "obs:bucket:ListAllMyBuckets",
                "obs:bucket:ListBucket"
            ]
        }
    ]
}

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

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

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

图1 给用户组授权策略

添加ModelArts委托授权。

新建委托授权策略。

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

“策略名称”:设置自定义策略名称,例如:ma_agency_obs。
“策略配置方式”:JSON视图。
“策略内容”:填入如下内容。

{
    "Version": "1.1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "obs:object:GetObject",
                "obs:object:DeleteObject",
                "obs:bucket:PutBucketAcl",
                "obs:object:PutObject",
                "obs:bucket:CreateBucket",
                "obs:bucket:GetBucketAcl",
                "obs:bucket:PutBucketCORS",
                "obs:bucket:ListAllMyBuckets",
                "obs:bucket:ListBucket",
                "obs:object:GetObjectVersion"
            ]
        }
    ]
}

创建委托。

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

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

图2 创建委托

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

图3 选择策略

为子用户配置ModelArts委托权限。

在ModelArts服务页面的左侧导航选择“全局配置 ”,单击“添加授权”。授权对象选择子用户,在已有委托中选择新建的委托,然后单击“创建”。

图4 配置ModelArts委托权限

验证权限是否配置成功。

登录子用户帐号,若用户能在控制台上成功创建Notebook示例、挂载OBS文件系统(OBS桶需由管理员创建)、保存镜像,则表示权限配置成功。

父主题: 典型场景配置实践

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

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