云服务器内容精选

  • 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 弹性节点Lite Server
  • 角色与策略权限管理 ModelArts服务支持角色与策略授权。默认情况下,管理员创建的 IAM 用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 ModelArts部署时通过物理区域划分,为项目级服务。授权时,“授权范围”需要选择“指定区域项目资源”,然后在指定区域(如华北-北京1)对应的项目(cn-north-1)中设置相关权限,并且该权限仅对此项目生效;如果“授权范围”选择“所有资源”,则该权限在所有区域项目中都生效。访问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 开发环境Notebook/镜像管理/弹性节点Server 对象存储服务OBS OBS Administrator 凭据管理服务 CS MS C SMS ReadOnlyAccess 云审计服务CTS CTS Administrator 弹性 云服务器ECS ECS FullAccess 容器镜像服务 SWR SWR Admin 弹性文件服务SFS SFS Turbo FullAccess 应用运维管理 服务 AOM AOM FullAccess 密钥管理服务KMS KMS CMKFullAccess AI开发平台ModelArts ModelArts CommonOperations ModelArts Dependency Access 算法管理/训练管理/Workflow/自动学习 对象存储服务OBS OBS Administrator 消息通知 服务 SMN SMN Administrator 云审计服务CTS CTS Administrator 企业项目管理服务EPS EPS FullAccess 弹性文件服务SFS SFS ReadOnlyAccess 容器 镜像服务 SWR SWR Admin 应用运维管理服务AOM AOM FullAccess 密钥管理服务KMS KMS CMKFullAccess 虚拟私有云服务VPC VPC FullAccess 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 容器镜像服务SWR SWR Admin AI开发平台ModelArts ModelArts CommonOperations ModelArts Dependency Access AI Gallery 对象存储服务OBS OBS Administrator 云审计服务CTS CTS Administrator 容器镜像服务SWR SWR Admin AI开发平台ModelArts ModelArts CommonOperations ModelArts Dependency Access 弹性集群Cluster(包含Standard资源池和Lite资源池) 云审计服务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 ModelArts CommonOperations ModelArts Dependency Access 费用中心 BSS Administrator 云硬盘EVS EVS FullAccess 如果系统预置的权限,不满足您的授权要求,可以创建自定义策略。自定义策略中可以添加的授权项(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" ] } ] }
  • IAM权限简介 如果您需要为企业中的员工设置不同的权限访问ModelArts资源,以达到不同员工之间的权限隔离,您可以使用 统一身份认证 服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全的控制云服务资源的访问。如果华为账号已经能满足您的要求,不需要通过IAM对用户进行权限管理,您可以跳过本章节,不影响您使用ModelArts服务的其他功能。 IAM是提供权限管理的基础服务,无需付费即可使用,您只需要为您账号中的资源进行付费。 通过IAM,您可以通过授权控制用户对服务资源的访问范围。例如您的员工中有负责软件开发的人员,您希望这些用户拥有ModelArts的使用权限,但是不希望这些用户拥有删除ModelArts等高危操作的权限,那么您可以使用IAM进行权限分配,通过授予用户仅能使用ModelArts,但是不允许删除ModelArts的权限,控制用户对ModelArts资源的使用范围。 关于IAM的详细介绍,请参见IAM产品介绍。
  • 委托授权 用户在使用ModelArts服务的过程中,为了简化用户的操作,ModelArts后台可以代替用户完成一些工作,如训练作业启动前自动下载用户OBS桶中的数据集到作业空间、自动转储训练作业日志到用户OBS桶中。 ModelArts服务不会保存用户的Token认证凭据,在后台异步作业中操作用户的资源(如OBS桶)前,需要用户通过IAM委托向ModelArts显式授权,ModelArts在需要时使用用户的委托获取临时认证凭据用于操作用户资源,见“添加授权”。 图1 委托授权 如图1所示,用户向ModelArts授权后,ModelArts使用委托授权的临时凭证访问和操作用户资源,协助用户自动化一些繁琐和耗时的操作。同时,委托凭证会同步到用户的作业中(Notebook实例和训练作业),用户在作业中可以使用委托凭证自行访问自己的资源。
  • 功能依赖 功能依赖策略项 您在使用ModelArts的过程中,需要和其他云服务交互,比如需要在提交训练作业时选择指定数据集OBS路径和日志存储OBS路径。因此管理员在为用户配置细粒度授权策略时,需要同时配置依赖的权限项,用户才能使用完整的功能。 如果您使用根用户(与账户同名的缺省子用户)使用ModelArts,根用户默认拥有所有权限,不再需要单独授权。 请用户确保当前用户具备委托授权中包含的依赖策略项权限。例如,用户给ModelArts的委托需要授权SWR Admin权限,需要保证用户本身具备SWR Admin权限。 表1 基本配置 业务场景 依赖的服务 依赖策略项 支持的功能 全局配置 IAM iam:users:listUsers 查询用户列表(仅管理员需要) 基本功能 IAM iam:tokens:assume 使用委托获取用户临时认证凭据(必需) 基本功能 BSS bss:balance:view 在ModelArts控制台创建资源后,页面展示账号当前余额 表2 管理工作空间 业务场景 依赖的服务 依赖策略项 支持的功能 工作空间 IAM iam:users:listUsers 按用户进行工作空间授权 ModelArts modelarts:*:delete* 删除工作空间时,同时清理空间内的资源 表3 管理开发环境Notebook 业务场景 依赖的服务 依赖策略项 支持的功能 开发环境实例生命周期管理 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 aom:metric:get aom:metric:list aom:alarm:list VPC vpc:securityGroups:get vpc:vpcs:list vpc:securityGroups:get vpc:vpcs: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实例配置登录密钥。 DEW kps:domainKeypairs:get kps:domainKeypairs:list kps:domainKeypairs:createkmskey KMS kms:cmk:list 挂载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项目列表,完成连接配置。 表4 弹性节点Server 业务场景 依赖的服务 依赖策略项 支持的功能 弹性节点Server实例生命周期管理 ModelArts modelarts:devserver:create modelarts:devserver:listByUser modelarts:devserver:list modelarts:devserver:get modelarts:devserver:delete modelarts:devserver:start modelarts:devserver:stop modelarts:devserver:sync 创建实例、查询实例列表、查询租户所有实例列表、查询实例详情、删除实例、启动实例、停止实例、同步实例状态。 ECS ecs:serverKeypairs:createecs:*:get IAM iam:users:getUser iam:users:listUsers iam:projects:listProjects VPC vpc.*.list EPS eps.*.list EVS evs.*.list IMS ims.*.list ims.*.get 表5 管理训练作业 业务场景 依赖的服务 依赖策略项 支持的功能 训练管理 ModelArts modelarts:trainJob:* modelarts:trainJobLog:* modelarts:aiAlgorithm:* modelarts:image:list modelarts:network:get modelarts:workspace:get 创建训练作业和查看训练日志。 modelarts:workspace:getQuota 查询工作空间配额。如果开通了工作空间功能,则需要配置此权限。 modelarts:tag:list 在训练作业中使用标签管理服务TMS。 IAM iam:credentials:listCredentials iam:agencies:listAgencies 使用配置的委托授权项。 SFS Turbo sfsturbo:shares:getShare sfsturbo:shares:getAllShares 在训练作业中使用SFS Turbo。 SWR SWR Admin 使用自定义镜像运行训练作业。 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桶中的数据集运行训练作业。 表6 使用Workflow 业务场景 依赖的服务 依赖策略项 支持的功能 使用数据集 ModelArts modelarts:dataset:getDataset modelarts:dataset:createDataset modelarts:dataset:createDatasetVersion modelarts:dataset:createImportTask modelarts:dataset:updateDataset modelarts:processTask:createProcessTask modelarts:processTask:getProcessTask modelarts:dataset:listDatasets 在工作流中使用ModelArts数据集 管理模型 ModelArts modelarts:model:list modelarts:model:get modelarts:model:create modelarts:model:delete modelarts:model:update 在工作流中管理ModelArts模型 部署上线 ModelArts modelarts:service:get modelarts:service:create modelarts:service:update modelarts:service:delete modelarts:service:getLogs 在工作流中管理ModelArts在线服务 训练作业 ModelArts modelarts:trainJob:get modelarts:trainJob:create modelarts:trainJob:list modelarts:trainJobVersion:list modelarts:trainJobVersion:create modelarts:trainJob:delete modelarts:trainJobVersion:delete modelarts:trainJobVersion:stop 在工作流中管理ModelArts训练作业 工作空间 ModelArts modelarts:workspace:get modelarts:workspace:getQuotas 在工作流中使用ModelArts工作空间 管理数据 OBS obs:bucket:ListAllMybuckets(获取桶列表) obs:bucket:HeadBucket(获取桶元数据) obs:bucket:ListBucket(列举桶内对象) obs:bucket:GetBucketLocation(获取桶区域位置) obs:object:GetObject(获取对象内容、获取对象元数据) obs:object:GetObjectVersion(获取对象内容、获取对象元数据) obs:object:PutObject(PUT上传、POST上传、复制对象、追加写对象、初始化上传段任务、上传段、合并段) obs:object:DeleteObject(删除对象、批量删除对象) obs:object:DeleteObjectVersion(删除对象、批量删除对象) obs:object:ListMultipartUploadParts(列举已上传的段) obs:object:AbortMultipartUpload(取消多段上传任务) obs:object:GetObjectAcl(获取对象ACL) obs:object:GetObjectVersionAcl(获取对象ACL) obs:bucket:PutBucketAcl(设置桶ACL) obs:object:PutObjectAcl(设置对象ACL) 在工作流中使用OBS数据 工作流运行 IAM iam:users:listUsers(查询用户列表) iam:agencies:getAgency(查询指定委托详情) iam:tokens:assume(获取委托Token) 在工作流运行时,调用ModelArts其他服务 集成DLI DLI dli:jobs:get(查询作业详情) dli:jobs:listAll(查询作业列表) dli:jobs:create(创建新作业) 在工作流中集成DLI 集成MRS MRS mrs:job:get(查询作业详情) mrs:job:submit(创建并执行作业) mrs:job:list(查询作业列表) mrs:job:stop(停止作业) mrs:job:batchDelete(批量删除作业) mrs:file:list(查询文件列表) 在工作流中集成MRS 表7 管理模型 业务场景 依赖的服务 依赖策略项 支持的功能 管理模型 SWR SWR Admin 从自定义镜像导入、从OBS导入时使用自定义引擎。 SWR共享版不支持细粒度权限项,因此需要配置Admin权限。 OBS obs:bucket:ListAllMybuckets(获取桶列表) obs:bucket:HeadBucket(获取桶元数据) obs:bucket:ListBucket(列举桶内对象) obs:bucket:GetBucketLocation(获取桶区域位置) obs:object:GetObject(获取对象内容、获取对象元数据) obs:object:GetObjectVersion(获取对象内容、获取对象元数据) obs:object:PutObject(PUT上传、POST上传、复制对象、追加写对象、初始化上传段任务、上传段、合并段) obs:object:DeleteObject(删除对象、批量删除对象) obs:object:DeleteObjectVersion(删除对象、批量删除对象) obs:object:ListMultipartUploadParts(列举已上传的段) obs:object:AbortMultipartUpload(取消多段上传任务) obs:object:GetObjectAcl(获取对象ACL) obs:object:GetObjectVersionAcl(获取对象ACL) obs:bucket:PutBucketAcl(设置桶ACL) obs:object:PutObjectAcl(设置对象ACL) 从OBS导入模型 模型转换指定OBS路径 表8 管理部署上线 业务场景 依赖的服务 依赖策略项 支持的功能 在线服务 LTS lts:logs:list(查询日志列表) 查询和展示LTS日志。 OBS obs:bucket:GetBucketPolicy (获取桶策略) obs:bucket:HeadBucket (获取桶元数据) obs:bucket:ListAllMyBuckets (获取桶列表) obs:bucket:PutBucketPolicy (设置桶策略) obs:bucket:DeleteBucketPolicy (删除桶策略) 服务运行时容器挂载外部存储卷。 批量服务 OBS obs:object:GetObject(获取对象内容、获取对象元数据) obs:object:PutObject(PUT上传、POST上传、复制对象、追加写对象、初始化上传段任务、上传段、合并段) obs:bucket:CreateBucket(创建桶) obs:bucket:ListBucket(列举桶内对象) obs:bucket:ListAllMyBuckets(获取桶列表) 创建批量服务,批量推理。 边缘服务 CES ces:metricData:list(查询指标数据) 查看服务的监控指标 IEF ief:deployment:delete(删除应用部署) 管理边缘服务 AOM指标告警事件 AOM aom:alarm:list 查看AOM监控相关信息。 表9 管理数据集 业务场景 依赖的服务 依赖策略项 支持的功能 管理数据集和标注 OBS obs:bucket:GetBucketLocation obs:bucket:PutBucketAcl obs:object:PutObjectAcl obs:object:GetObjectVersion obs:object:GetObject obs:object:GetObjectVersionAcl obs:object:DeleteObject obs:object:ListMultipartUploadParts obs:bucket:HeadBucket obs:object:AbortMultipartUpload obs:object:DeleteObjectVersion obs:object:GetObjectAcl obs:bucket:ListAllMyBuckets obs:bucket:ListBucket obs:object:PutObject 管理OBS中的数据集 标注OBS数据 创建数据管理作业 管理表格数据集 DLI dli:database:displayAllDatabases dli:database:displayAllTables dli:table:describeTable 在数据集中管理DLI数据 管理表格数据集 DWS dws:openAPICluster:list dws:openAPICluster:getDetail dws:cluster:list 在数据集中管理DWS数据 管理表格数据集 MRS mrs:job:submit mrs:job:list mrs:cluster:list mrs:cluster:get 在数据集中管理MRS数据 智能标注 ModelArts modelarts:service:list modelarts:model:list modelarts:model:get modelarts:model:create modelarts:trainJobInnerModel:list modelarts:workspace:get modelarts:workspace:list 使用智能标注 团队标注 IAM iam:projects:listProjects(查询租户项目) iam:users:listUsers(查询用户列表) iam:agencies:createAgency(创建委托) iam:quotas:listQuotasForProject(查询指定项目的配额) 管理标注团队 表10 资源管理 业务场景 依赖的服务 依赖策略项 支持的功能 资源池管理 BSS bss:coupon:view bss:order:view bss:balance:view bss:discount:view bss:renewal:view bss:bill:view bss:contract:update bss:order:pay bss:unsubscribe:update bss:renewal:update bss:order:update 资源池的创建、续费、退订等与计费相关的功能。 CCE cce:cluster:list cce:cluster:get 获取CCE集群列表、集群详情、集群证书等信息。 KMS kms:cmk:list kms:cmk:getMaterial 获取用户创建的密钥对列表信息。 AOM aom:metric:get 获取资源池的监控数据。 OBS obs:bucket:ListAllMybuckets obs:bucket:HeadBucket obs:bucket:ListBucket obs:bucket:GetBucketLocation obs:object:GetObject obs:object:PutObject obs:object:DeleteObject obs:object:DeleteObjectVersion 获取AI诊断日志。 ECS ecs:availabilityZones:list ecs:cloudServerFlavors:get ecs:cloudServerQuotas:get ecs:quotas:get ecs:serverKeypairs:list 查询可用区列表、规格、配额,配置密钥匙。 EVS evs:types:get evs:quotas:get 查询云硬盘类型列表、配额。 BMS bms:serverFlavors:get 查询裸金属规格。依赖权限需要配置在IAM项目视图中。 DEW kps:domainKeypairs:list 配置密钥对。依赖权限需要配置在IAM项目视图中。 网络管理 VPC vpc:routes:create vpc:routes:list vpc:routes:get vpc:routes:delete vpc:peerings:create vpc:peerings:accept vpc:peerings:get vpc:peerings:delete vpc:routeTables:update vpc:routeTables:get vpc:routeTables:list vpc:vpcs:create vpc:vpcs:list vpc:vpcs:get vpc:vpcs:delete vpc:subnets:create vpc:subnets:get vpc:subnets:delete vpcep:endpoints:list vpcep:endpoints:create vpcep:endpoints:delete vpcep:endpoints:get vpc:ports:create vpc:ports:get vpc:ports:update vpc:ports:delete vpc:networks:create vpc:networks:get vpc:networks:update vpc:networks:delete vpc:securityGroups:get ModelArts网络资源创建和删除、VPC网络打通。 SFS Turbo sfsturbo:shares:addShareNic sfsturbo:shares:deleteShareNic sfsturbo:shares:showShareNic sfsturbo:shares:listShareNics 用户的网络和SFS Turbo资源打通。 边缘资源池 IEF ief:node:list ief:group:get ief:application:list ief:application:get ief:node:listNodeCert ief:node:get ief:IEFInstance:get ief:deployment:list ief:group:listGroupInstanceState ief:IEFInstance:list ief:deployment:get ief:group:list 边缘池增删改查管理。
  • 策略结构&语法 策略结构包括:Version(策略版本号)和Statement(策略权限语句),其中Statement可以有多个,表示不同的授权项。 图1 策略结构 策略语法,示例: { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:bucket:HeadBucket", "obs:bucket:ListBucket", "obs:bucket:GetBucketLocation" ], "Resource": [ "obs:*:*:bucket:*" ], "Condition": { "StringEndWithIfExsits": { "g:UserName": ["specialCharacter"] }, "Bool": { "g:MFAPresent": ["true"] } } } ] } 表3 策略语法参数 参数 说明 Version 标识策略的版本号: 1.0:RBAC策略。RBAC策略是将服务作为一个整体进行授权,授权后,用户可以拥有这个服务的所有权限。 1.1:细粒度策略。相比RBAC策略,细粒度策略基于服务的API接口进行权限拆分,授权更加精细,可以精确到具体操作和具体资源。例如:您可以限制子用户只能访问某一个OBS桶中某一个目录下的对象。 Statement 策略授权语句,描述策略的详细信息,包含Effect(效果)、Action(动作)、Resource(资源)和Condition(条件)。其中Resource和Condition为可选。 Effect(效果) 作用包含两种:Allow(允许)和Deny(拒绝),系统预置策略仅包含允许的授权语句,自定义策略中可以同时包含允许和拒绝的授权语句,当策略中既有允许又有拒绝的授权语句时,遵循Deny优先的原则。 Action(动作) 对资源的具体操作权限,格式为:服务名:资源类型:操作,支持单个或多个操作权限,支持通配符号*,通配符号表示所有。OBS只有两种资源类型:bucket和object。 详细的Action描述请参见桶相关授权项和对象相关授权项。 Resource(资源) 策略所作用的资源,格式为:服务名:region:domainId:资源类型:资源路径,支持通配符号*,通配符号表示所有。在JSON视图中,不带Resource表示对所有资源生效。 Resource支持以下字符:-_0-9a-zA-Z*./\,如果Resource中包含不支持的字符,请采用通配符号*。 OBS是全局级服务,region填“*”;domainId表示资源拥有者的账号ID,建议填写“*”简单地表示所填资源的账号ID。 示例: "obs:*:*:bucket:*": 表示所有的OBS桶。 "obs:*:*:object:my-bucket/my-object/*": 表示桶my-bucket中“my-object”目录下的所有对象。 Condition(条件) 您可以在创建自定义策略时,通过Condition元素来控制策略何时生效。Condition包括条件键和运算符,条件键表示策略语句的Condition元素,分为全局级条件键和服务级条件键。全局级条件键(前缀为g:)适用于所有操作,服务级条件键(前缀为服务缩写,如obs:)仅适用于对应服务的操作。运算符与条件键一起使用,构成完整的条件判断语句。 OBS通过IAM预置了一组条件键,例如,您可以先使用obs:SourceIp条件键检查请求者的IP地址,然后再允许执行操作。 OBS支持的条件键和运算符与桶策略的Condition一致,在IAM配置时需要在前面加上“obs:”。详细的Condition介绍请参见桶策略参数说明。 Condition的条件值仅支持以下字符:-,./ a-zA-Z0-9_@#$%&,如果条件值中包含不支持的字符,请考虑使用模糊匹配的条件运算符,如:StringMatch等。 示例: "StringEndWithIfExists":{"g:UserName":["specialCharacter"]}:表示当用户输入的用户名以"specialCharacter"结尾时该条statement生效。 "StringLike":{"obs:prefix":["private/"]}:表示在列举桶内对象时,需要指定prefix为private/或者包含private/这一子字符串。 Resource(资源)级别细粒度授权特性会逐步在各个区域上线,需要使用该特性时请确保桶所在区域已经支持。 使用Resource(资源)级别细粒度授权特性前,请提交工单到OBS,申请开通Resource(资源)级别细粒度授权特性白名单。
  • OBS自定义策略样例 示例1:给用户授予OBS的所有权限 此策略表示用户可以对OBS进行任何操作,使用方式包括API、SDK、控制台及工具。 由于用户登录OBS控制台时,会访问一些其他服务的资源,如CTS审计信息, CDN加速 域名,KMS密钥等。因此除了配置OBS的权限外,还需要配置其他服务的访问权限。其中CDN属于全局服务,CTS、KMS等属于区域级服务,需要根据您实际使用到的服务和区域分别在全局项目和对应区域项目中配置Tenant Guest权限。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:*:*" ] } ] } 示例2:给用户授予桶的只读权限(不限定目录) 此策略表示用户可以对桶obs-example下的所有对象进行列举和下载。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:object:GetObject", "obs:bucket:ListBucket" ], "Resource": [ "obs:*:*:object:obs-example/*", "obs:*:*:bucket:obs-example" ] } ] } 示例3:给用户授予桶的只读权限(限定目录) 此策略表示用户只能下载桶obs-example中“my-project/”目录下的所有对象,其他目录下的对象虽然可以列举,但无法下载。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:object:GetObject", "obs:bucket:ListBucket" ], "Resource": [ "obs:*:*:object:obs-example/my-project/*", "obs:*:*:bucket:obs-example" ] } ] } 示例4:给用户授予桶的读写权限(限定目录) 此策略表示用户可以对桶obs-example中“my-project”目录下的所有的对象进行列举、下载、上传和删除。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:object:GetObject", "obs:object:ListMultipartUploadParts", "obs:bucket:ListBucket", "obs:object:DeleteObject", "obs:object:PutObject" ], "Resource": [ "obs:*:*:object:obs-example/my-project/*", "obs:*:*:bucket:obs-example" ] } ] } 示例5:给用户授予桶的所有权限 此策略表示用户可以对桶obs-example进行任何操作。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:*:*" ], "Resource": [ "obs:*:*:bucket:obs-example", "obs:*:*:object:obs-example/*" ] } ] } 示例6:拒绝用户上传对象 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先原则。 如果您给用户授予OBS OperateAccess的系统策略,但不希望用户拥有OBS OperateAccess中定义的上传对象的权限,您可以创建一条拒绝上传对象的自定义策略,然后同时将OBS OperateAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以执行除了上传对象外OBS OperateAccess允许的所有操作。拒绝策略示例如下: { "Version": "1.1", "Statement": [ { "Effect": "Deny", "Action": [ "obs:object:PutObject" ] } ] } 示例7:给用户授予指定桶的修改桶存储类别权限以及桶内指定对象的删除权限 此策略表示用户可以对桶obs-example进行修改桶存储类别,以及对桶obs-example中“my-object.txt”对象进行删除。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:bucket:ListAllMyBuckets", "obs:bucket:ListBucket" ] }, { "Effect": "Allow", "Action": [ "obs:object:DeleteObject", "obs:bucket:PutBucketStoragePolicy" ], "Resource": [ "OBS:*:*:object:obs-example/my-object.txt", "OBS:*:*:bucket:obs-example" ] } ] }
  • IAM权限简介 默认情况下,管理员创建的IAM用户没有任何权限,需要将其加入用户组,并给用户组授予策略和角色,才能使得用户组中的用户获得策略定义的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 对于OBS,IAM权限作用于OBS所有的桶和对象。如果要授予IAM用户操作OBS资源的权限,则需要向IAM用户所属的用户组授予一个或多个OBS权限。 OBS部署时不区分物理区域,为全局级服务。授权时,在全局级服务中设置权限,访问OBS时,不需要切换区域。 根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。例如:针对OBS服务,管理员能够控制IAM用户仅能对某一个桶资源进行指定的管理操作。多数细粒度策略以API接口为粒度进行权限拆分,OBS支持的API授权项请参见权限和授权项说明。 由于缓存的存在,对用户、用户组以及企业项目授予OBS相关的角色和策略后,大概需要等待10~15分钟权限才能生效。 IAM中为各云服务预置了系统权限,方便您快速完成基础权限配置,表1为OBS的所有系统权限。 如果系统预置的OBS权限,不满足您的授权要求,可以创建自定义策略。自定义策略中可以添加的授权项(Action)请参考桶相关授权项和对象相关授权项。 表1 OBS系统权限 系统角色/策略名称 描述 类别 依赖关系 Tenant Administrator 拥有该权限的用户拥有除IAM外,其他所有服务的所有执行权限。 系统角色 无 Tenant Guest 拥有该权限的用户拥有除IAM外,其他所有服务的只读权限。 系统角色 无 OBS Administrator 拥有该权限的用户为OBS管理员,可以对账号下的所有OBS资源执行任意操作。 系统角色 无 OBS Buckets Viewer 拥有该权限的用户可以执行列举桶、获取桶基本信息、获取桶元数据的操作。 系统角色 无 OBS ReadOnlyAccess 拥有该权限的用户可以执行列举桶、获取桶基本信息、获取桶元数据、列举对象(不包含多版本)的操作。 说明: 拥有该权限的用户如果在控制台上列举对象失败,可能是因为桶中存在多版本对象。此时需要额外授予该用户列举多版本对象的权限(obs:bucket:ListBucketVersions),才能在控制台正常看到对象列表。 系统策略 无 OBS OperateAccess 拥有该权限的用户可以执行OBS ReadOnlyAccess的所有操作,在此基础上还可以执行上传对象、下载对象、删除对象、获取对象ACL等对象基本操作。 说明: 拥有该权限的用户如果在控制台上列举对象失败,可能是因为桶中存在多版本对象。此时需要额外授予该用户列举多版本对象的权限(obs:bucket:ListBucketVersions),才能在控制台正常看到对象列表。 系统策略 无 下表列出了OBS常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。 表2 OBS操作与资源权限关系 操作名称 Tenant Administrator Tenant Guest OBS Administrator OBS Buckets Viewer OBS ReadOnlyAccess OBS OperateAccess 列举桶 可以 可以 可以 可以 可以 可以 创建桶 可以 不可以 可以 不可以 不可以 不可以 删除桶 可以 不可以 可以 不可以 不可以 不可以 获取桶基本信息 可以 可以 可以 可以 可以 可以 获取桶监控数据 可以 可以 可以 不可以 不可以 不可以 管理桶访问权限 可以 不可以 可以 不可以 不可以 不可以 管理桶策略 可以 不可以 可以 不可以 不可以 不可以 修改桶存储类别 可以 不可以 可以 不可以 不可以 不可以 列举对象 可以 可以 可以 不可以 可以 可以 列举多版本对象 可以 可以 可以 不可以 不可以 不可以 上传文件 可以 不可以 可以 不可以 不可以 可以 新建文件夹 可以 不可以 可以 不可以 不可以 可以 删除文件 可以 不可以 可以 不可以 不可以 可以 删除文件夹 可以 不可以 可以 不可以 不可以 可以 下载文件 可以 可以 可以 不可以 不可以 可以 删除多版本文件 可以 不可以 可以 不可以 不可以 可以 下载多版本文件 可以 可以 可以 不可以 不可以 可以 修改对象存储类别 可以 不可以 可以 不可以 不可以 不可以 恢复文件 可以 不可以 可以 不可以 不可以 不可以 取消删除文件 可以 不可以 可以 不可以 不可以 可以 删除碎片 可以 不可以 可以 不可以 不可以 可以 管理对象访问权限 可以 不可以 可以 不可以 不可以 不可以 设置对象元数据 可以 不可以 可以 不可以 不可以 不可以 获取对象元数据 可以 可以 可以 不可以 不可以 可以 管理多版本控制 可以 不可以 可以 不可以 不可以 不可以 管理日志记录 可以 不可以 可以 不可以 不可以 不可以 管理事件通知 可以 不可以 可以 不可以 不可以 不可以 管理标签 可以 不可以 可以 不可以 不可以 不可以 管理生命周期规则 可以 不可以 可以 不可以 不可以 不可以 管理静态网站托管 可以 不可以 可以 不可以 不可以 不可以 管理CORS规则 可以 不可以 可以 不可以 不可以 不可以 管理防盗链 可以 不可以 可以 不可以 不可以 不可以 域名 管理 可以 不可以 可以 不可以 不可以 不可以 管理跨区域复制 可以 不可以 可以 不可以 不可以 不可以 管理图片处理 可以 不可以 可以 不可以 不可以 不可以 追加写对象 可以 不可以 可以 不可以 不可以 可以 设置对象ACL 可以 不可以 可以 不可以 不可以 不可以 设置指定版本对象ACL 可以 不可以 可以 不可以 不可以 不可以 获取对象ACL 可以 可以 可以 不可以 不可以 可以 获取指定版本对象ACL 可以 可以 可以 不可以 不可以 可以 多段上传 可以 不可以 可以 不可以 不可以 可以 列举已上传段 可以 可以 可以 不可以 不可以 可以 取消多段上传任务 可以 不可以 可以 不可以 不可以 可以
提示

您即将访问非华为云网站,请注意账号财产安全