更新时间:2024-09-26 GMT+08:00

IAM

介绍ModelArts所有功能涉及到的IAM权限配置。

IAM权限简介

如果您需要为企业中的员工设置不同的权限访问ModelArts资源,以达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全的控制云服务资源的访问。如果华为账号已经能满足您的要求,不需要通过IAM对用户进行权限管理,您可以跳过本章节,不影响您使用ModelArts服务的其他功能。

IAM是提供权限管理的基础服务,无需付费即可使用,您只需要为您账号中的资源进行付费。

通过IAM,您可以通过授权控制用户对服务资源的访问范围。例如您的员工中有负责软件开发的人员,您希望这些用户拥有ModelArts的使用权限,但是不希望这些用户拥有删除ModelArts等高危操作的权限,那么您可以使用IAM进行权限分配,通过授予用户仅能使用ModelArts,但是不允许删除ModelArts的权限,控制用户对ModelArts资源的使用范围。

关于IAM的详细介绍,请参见IAM产品介绍

角色与策略权限管理

ModelArts服务支持角色与策略授权。默认情况下,管理员创建的IAM用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。

ModelArts部署时通过物理区域划分,为项目级服务。授权时,“授权范围”需要选择“指定区域项目资源”,然后在指定区域(如亚太-曼谷)对应的项目(ap-southeast-2)中设置相关权限,并且该权限仅对此项目生效;如果“授权范围”选择“所有资源”,则该权限在所有区域项目中都生效。访问ModelArts时,需要先切换至授权区域。

表1所示,包括了ModelArts的所有系统策略权限。如果系统预置的ModelArts权限,不满足您的授权要求,可以创建自定义策略,可参考策略JSON格式字段介绍

表1 ModelArts系统策略

策略名称

描述

类型

ModelArts FullAccess

ModelArts管理员用户,拥有所有ModelArts服务的权限。

系统策略

ModelArts CommonOperations

ModelArts操作用户,拥有所有ModelArts服务操作权限除了管理专属资源池的权限。

系统策略

ModelArts Dependency Access

ModelArts服务的常用依赖服务的权限。

系统策略

ModelArts对其他云服务有依赖关系,因此在ModelArts控制台的各项功能需要配置相应的服务权限后才能正常查看或使用,依赖服务及其预置的权限如下。

表2 ModelArts控制台依赖服务的角色或策略

控制台功能

依赖服务

需配置角色/策略

数据管理

对象存储服务OBS

OBS Administrator

数据湖探索DLI

DLI FullAccess

MapReduce服务MRS

MRS Administrator

数据仓库服务GaussDB(DWS)

DWS Administrator

云审计服务CTS

CTS Administrator

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

开发环境

对象存储服务OBS

OBS Administrator

凭据管理服务CSMS

CSMS ReadOnlyAccess

云审计服务CTS

CTS Administrator

弹性云服务器ECS

ECS FullAccess

容器镜像服务SWR

SWR Administrator

弹性文件服务SFS

SFS Turbo FullAccess

应用运维管理服务AOM

AOM FullAccess

密钥管理服务KMS

KMS CMKFullAccess

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

训练管理

对象存储服务OBS

OBS Administrator

消息通知服务SMN

SMN Administrator

云审计服务CTS

CTS Administrator

弹性文件服务SFS Turbo

SFS Turbo ReadOnlyAccess

容器镜像服务SWR

SWR Administrator

应用运维管理服务AOM

AOM FullAccess

密钥管理服务KMS

KMS CMKFullAccess

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

Workflow

对象存储服务OBS

OBS Administrator

云审计服务CTS

CTS Administrator

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

自动学习

对象存储服务OBS

OBS Administrator

云审计服务CTS

CTS Administrator

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

AI应用管理

对象存储服务OBS

OBS Administrator

企业项目管理服务EPS

EPS FullAccess

云审计服务CTS

CTS Administrator

容器镜像服务SWR

SWR Administrator

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

部署上线

对象存储服务OBS

OBS Administrator

云监控服务CES

CES ReadOnlyAccess

消息通知服务SMN

SMN Administrator

企业项目管理服务EPS

EPS FullAccess

云审计服务CTS

CTS Administrator

云日志服务LTS

LTS FullAccess

虚拟私有云VPC

VPC FullAccess

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

AI Gallery

对象存储服务OBS

OBS Administrator

云审计服务CTS

CTS Administrator

容器镜像服务SWR

SWR Administrator

AI开发平台ModelArts

ModelArts CommonOperations

ModelArts Dependency Access

专属资源池

云审计服务CTS

CTS Administrator

云容器引擎CCE

CCE Administrator

裸金属服务器BMS

BMS FullAccess

镜像服务IMS

IMS FullAccess

数据加密服务DEW

DEW KeypairReadOnlyAccess

虚拟私有云VPC

VPC FullAccess

弹性云服务器ECS

ECS FullAccess

弹性文件服务SFS

SFS Turbo FullAccess

对象存储服务OBS

OBS Administrator

应用运维管理服务AOM

AOM FullAccess

标签管理服务TMS

TMS FullAccess

AI开发平台ModelArts

ModelArtsFullAccess

费用中心

BSS Administrator

如果系统预置的权限,不满足您的授权要求,可以创建自定义策略。自定义策略中可以添加的授权项(Action)请参考ModelArts资源权限项

目前支持以下两种方式创建自定义策略:

  • 可视化视图创建自定义策略:无需了解策略语法,按可视化视图导航栏选择云服务、操作、资源、条件等策略内容,可自动生成策略。
  • JSON视图创建自定义策略:可以在选择策略模板后,根据具体需求编辑策略内容;也可以直接在编辑框内编写JSON格式的策略内容。

具体创建步骤请参见:创建自定义策略。下面为您介绍常用的ModelArts自定义策略样例。

  • 示例1:授权镜像管理的权限。
    {
        "Version": "1.1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "modelarts:image:register",
                    "modelarts:image:listGroup"
                ]
            }
        ]
    }
  • 示例2:拒绝用户创建、更新、删除专属资源池。

    拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先原则

    {
        "Version": "1.1",
        "Statement": [
            {
                "Action": [
                    "modelarts:*:*"
                ],
                "Effect": "Allow"
            },
            {
                "Action": [
                    "swr:*:*"
                ],
                "Effect": "Allow"
            },
            {
                "Action": [
                    "smn:*:*"
                ],
                "Effect": "Allow"
            },
            {
                "Action": [
                    "modelarts:pool:create",
                    "modelarts:pool:update",
                    "modelarts:pool:delete"
                ],
                "Effect": "Deny"
            }
        ]
    }
  • 示例3:多个授权项策略。

    一个自定义策略中可以包含多个授权项,且除了可以包含本服务的授权项外,还可以包含其他服务的授权项,可以包含的其他服务必须跟本服务同属性,即都是项目级服务或都是全局级服务。多个授权语句策略描述如下:

    {
        "Version": "1.1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "modelarts:service:*"
                ]
            },
            {
                "Effect": "Allow",
                "Action": [
                    "lts:logs:list"
                ]
            }
        ]
    }

策略JSON格式字段介绍

策略结构

策略结构包括Version(策略版本号)和Statement(策略权限语句)两部分,其中Statement可以有多个,表示不同的授权项。

图1 策略结构

策略参数

下面介绍策略参数详细说明。了解策略参数后,您可以根据场景自定义策略。具体可以参考文档自定义策略使用样例

表3 策略参数说明

参数

含义

Version

策略的版本。

1.1:代表基于策略的访问控制。

Statement:策略的授权语句

Effect:作用

定义Action中的操作权限是否允许执行。

  • Allow:允许执行。
  • Deny:不允许执行。
    说明:

    当同一个Action的Effect既有Allow又有Deny时,遵循Deny优先的原则。

Action:授权项

操作权限。

格式为“服务名:资源类型:操作”。授权项支持通配符号*,通配符号*表示所有。

示例:

"modelarts:notebook:list":表示查看Notebook实例列表权限,其中modelarts为服务名,notebook为资源类型,list为操作。

您可以在对应服务“API参考”资料中查看该服务所有授权项。

Condition:条件

使策略生效的特定条件,包括条件键运算符

格式为“条件运算符:{条件键:[条件值1,条件值2]}”。

如果您设置多个条件,同时满足所有条件时,该策略才生效。

示例:

"StringEndWithIfExists":{"g:UserName":["specialCharacter"]}:表示当用户输入的用户名以"specialCharacter"结尾时该条statement生效。

Resource: 资源类型

策略所作用的资源。

格式为“服务名:<region>:<account-id>:资源类型:资源路径”,资源类型支持通配符号*,通配符号*表示所有。

说明:

ModelArts的授权不支持指定具体资源路径。

ModelArts资源类型

管理员可以按ModelArts的资源类型选择授权范围。ModelArts支持的资源类型如下表:

表4 ModelArts资源类型(角色与策略授权)

资源类型

说明

notebook

开发环境的Notebook实例

exemlProject

自动学习项目

exemlProjectInf

自动学习项目的在线推理服务

exemlProjectTrain

自动学习项目的训练作业

exemlProjectVersion

自动学习项目的版本

workflow

Workflow项目

pool

专属资源池

network

专属资源池网络连接

trainJob

训练作业

trainJobLog

训练作业的运行日志

trainJobInnerModel

系统预置模型

model

模型

service

在线服务

nodeservice

边缘服务

workspace

工作空间

dataset

数据集

dataAnnotation

数据集的标注信息

aiAlgorithm

训练算法

image

镜像

devserver

弹性裸金属

ModelArts资源权限项

参考《ModelArts API参考》中的权限策略和授权项。