计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
威胁检测服务 MTD
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive

身份策略授权参考

更新时间:2024-12-02 GMT+08:00

云服务在IAM预置了常用授权项,称为系统身份策略。如果IAM系统身份策略无法满足授权要求,管理员可以根据各服务支持的授权项,创建IAM自定义身份策略来进行精细的访问控制,IAM自定义身份策略是对系统身份策略的扩展和补充。

除IAM服务外,Organizations服务中的服务控制策略(Service Control Policies,以下简称SCP)也可以使用这些授权项元素设置访问控制策略。

SCP不直接进行授权,只划定权限边界。将SCP绑定到组织单元或者成员账号时,并没有直接对组织单元或成员账号授予操作权限,而是规定了成员账号或组织单元包含的成员账号的授权范围。IAM身份策略授予权限的有效性受SCP限制,只有在SCP允许范围内的权限才能生效。

IAM服务与Organizations服务在使用这些元素进行访问控制时,存在着一些区别。

本章节介绍IAM服务身份策略授权场景中自定义身份策略和组织服务中SCP使用的元素,这些元素包含了操作(Action)、资源(Resource)和条件(Condition)。

操作(Action)

操作(Action)即为身份策略中支持的授权项。

  • “访问级别”列描述如何对操作进行分类(list、read和write等)。此分类可帮助您了解在身份策略中相应操作对应的访问级别。
  • “资源类型”列指每个操作是否支持资源级权限。
    • 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在身份策略语句的Resource元素中指定所有资源类型(“*”)。
    • 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。
    • 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。

    关于SWR定义的资源类型的详细信息请参见资源类型(Resource)

  • “条件键”列包括了可以在身份策略语句的Condition元素中支持指定的键值。
    • 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。
    • 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。
    • 如果此列条件键没有值(-),表示此操作不支持指定条件键。

    关于SWR定义的条件键的详细信息请参见条件(Condition)

  • “别名”列包括了可以在身份策略中配置的策略授权项。通过这些授权项,可以控制支持策略授权的API访问。

您可以在身份策略语句的Action元素中指定以下SWR的相关操作。

表1 SWR支持的授权项

授权项

描述

访问级别

资源类型(*为必须)

条件键

别名

swr:namespace:createNamespace

授予共享版仓库创建组织的权限。

write

namespace *

-

-

swr:namespace:deleteNamespace

授予共享版仓库删除组织的权限。

write

namespace *

-

-

swr:namespace:listNamespaces

授予共享版仓库查询组织列表的权限。

list

namespace *

-

-

swr:namespace:getNamespace

授予共享版仓库获取组织详情的权限。

read

namespace *

-

-

swr:repo:createRepo

授予共享版仓库创建镜像仓库的权限。

write

repo *

-

-

swr:repo:deleteRepo

授予共享版仓库删除镜像仓库的权限。

write

repo *

-

-

swr:repo:listRepos

授予共享版仓库查询镜像仓库列表的权限。

list

repo *

-

-

swr:repo:listSharedRepos

授予共享版仓库查询共享镜像列表的权限。

list

repo *

-

-

swr:repo:getRepo

授予共享版仓库查询镜像仓库概要信息的权限。

read

repo *

-

-

swr:repo:updateRepo

授予共享版仓库更新镜像仓库的概要信息的权限。

write

repo *

-

-

swr:repo:deleteRepoTag

授予共享版仓库删除镜像仓库中指定tag的镜像的权限。

write

repo *

-

-

swr:repo:createRepoTag

授予共享版仓库创建镜像tag的权限。

write

repo *

-

-

swr:repo:listRepoTags

授予共享版仓库查询镜像tag列表的权限。

list

repo *

-

-

swr:repo:createRepoDomain

授予共享版仓库创建共享账号的权限。

permission_management

repo *

-

-

-

  • swr:TargetAccountId
  • swr:TargetOrgPath
  • swr:TargetOrgId

swr:repo:deleteRepoDomain

授予共享版仓库删除共享账号的权限。

permission_management

repo *

-

-

swr:repo:listRepoDomains

授予共享版仓库获取共享账号列表的权限。

list

repo *

-

-

swr:repo:getRepoDomain

授予共享版仓库判断共享账号是否存在的权限。

read

repo *

-

-

swr:repo:updateRepoDomain

授予共享版仓库更新共享账号的权限。

permission_management

repo *

-

-

swr:repo:createRepoShare

授予共享版仓库创建镜像共享规则的权限。

permission_management

repo *

-

-

-

  • swr:TargetAccountId
  • swr:TargetOrgPath
  • swr:TargetOrgId

swr:repo:deleteRepoShare

授予共享版仓库删除镜像共享规则的权限。

permission_management

repo *

-

-

swr:repo:listRepoShares

授予共享版仓库获取镜像共享规则列表的权限。

list

repo *

-

-

swr:repo:getRepoShare

授予共享版仓库查看镜像共享规则的权限。

read

repo *

-

-

swr:repo:updateRepoShare

授予共享版仓库更新镜像共享规则的权限。

permission_management

repo *

-

-

swr:repo:createAutoSyncRepoJob

授予共享版仓库创建镜像自动同步任务的权限。

write

repo *

-

-

swr:repo:createManualSyncRepoJob

授予共享版仓库手动同步镜像的权限。

write

repo *

-

-

swr:repo:deleteAutoSyncRepoJob

授予共享版仓库删除镜像自动同步任务的权限。

write

repo *

-

-

swr:repo:listAutoSyncRepoJobs

授予共享版仓库获取镜像自动同步任务列表的权限。

list

repo *

-

-

swr:repo:getSyncRepoJobInfo

授予共享版仓库获取镜像自动同步任务信息的权限。

read

repo *

-

-

swr:repo:createTrigger

授予共享版仓库创建触发器的权限。

write

repo *

-

-

swr:repo:deleteTrigger

授予共享版仓库删除触发器的权限。

write

repo *

-

-

swr:repo:listTriggers

授予共享版仓库获取镜像仓库下的触发器列表的权限。

list

repo *

-

-

swr:repo:getTrigger

授予共享版仓库获取触发器详情的权限。

read

repo *

-

-

swr:repo:updateTrigger

授予共享版仓库更新触发器配置的权限。

write

repo *

-

-

swr:repo:createRetention

授予共享版仓库创建镜像老化规则的权限。

write

repo *

-

-

swr:repo:deleteRetention

授予共享版仓库删除镜像老化规则的权限。

write

repo *

-

-

swr:repo:listRetentionHistories

授予共享版仓库获取镜像老化记录的权限。

list

repo *

-

-

swr:repo:listRetentions

授予共享版仓库获取镜像老化规则列表的权限。

list

repo *

-

-

swr:repo:getRetention

授予共享版仓库获取镜像老化规则记录的权限。

read

repo *

-

-

swr:repo:updateRetention

授予共享版仓库修改镜像老化规则的权限。

write

repo *

-

-

swr::createLoginSecret

授予共享版仓库生成临时登录指令的权限。

write

-

-

-

swr::listQuotas

授予共享版仓库获取配额信息的权限。

list

-

-

-

swr::getDomainOverview

授予共享版仓库获取租户总览信息的权限。

read

-

-

-

swr::getDomainResourceReports

授予共享版仓库获取租户资源统计信息的权限。

read

-

-

-

swr:namespace:multipartUpload

授予共享版仓库分段上传镜像的权限。

write

namespace *

-

-

swr:namespace:createNamespaceAccess

授予共享版仓库创建组织权限的权限。

permission_management

namespace *

-

-

swr:namespace:deleteNamespaceAccess

授予共享版仓库删除组织权限的权限。

permission_management

namespace *

-

-

swr:namespace:getNamespaceAccess

授予共享版仓库查询组织权限的权限。

read

namespace *

-

-

swr:namespace:updateNamespaceAccess

授予共享版仓库更新组织权限的权限。

permission_management

namespace *

-

-

swr:repo:createRepoAccess

授予共享版仓库创建镜像权限的权限。

permission_management

repo *

-

-

swr:repo:deleteRepoAccess

授予共享版仓库删除镜像权限的权限。

permission_management

repo *

-

-

swr:repo:getRepoAccess

授予共享版仓库查询镜像权限的权限。

read

repo *

-

-

swr:repo:updateRepoAccess

授予共享版仓库更新镜像权限的权限。

permission_management

repo *

-

-

swr:repo:upload

授予共享版仓库上传镜像的权限。

write

repo *

-

-

swr:repo:download

授予共享版仓库下载镜像的权限。

read

repo *

-

-

SWR的API通常对应着一个或多个授权项。表2展示了API与授权项的关系,以及该API需要依赖的授权项。

表2 API与授权项的关系

API

对应的授权项

依赖的授权项

POST /v2/manage/namespaces

swr:namespace:createNamespace

-

DELETE /v2/manage/namespaces/{namespace}

swr:namespace:deleteNamespace

-

GET /v2/manage/namespaces

swr:namespace:listNamespaces

-

GET /v2/manage/namespaces/{namespace}

swr:namespace:getNamespace

-

POST /v2/manage/namespaces/{namespace}/repos

swr:repo:createRepo

-

DELETE /v2/manage/namespaces/{namespace}/repos/{repository}

swr:repo:deleteRepo

-

GET /v2/manage/repos

swr:repo:listRepos

-

GET /v2/manage/shared-repositories

swr:repo:listSharedRepos

-

GET /v2/manage/namespaces/{namespace}/repos/{repository}

swr:repo:getRepo

-

PATCH /v2/manage/namespaces/{namespace}/repos/{repository}

swr:repo:updateRepo

-

DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/tags/{tag}

swr:repo:deleteRepoTag

-

GET /v2/manage/namespaces/{namespace}/repos/{repository}/tags

swr:repo:listRepoTags

-

POST /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains

swr:repo:createRepoDomain

-

DELETE /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains/{access_domain}

swr:repo:deleteRepoDomain

-

GET /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains

swr:repo:listRepoDomains

-

GET /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains/{access_domain}

swr:repo:getRepoDomain

-

PATCH /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains/{access_domain}

swr:repo:updateRepoDomain

-

POST /v2/manage/namespaces/{namespace}/repos/{repository}/shares

swr:repo:createRepoShare

-

DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/shares/{share_id}

swr:repo:deleteRepoShare

-

GET /v2/manage/namespaces/{namespace}/repos/{repository}/shares

swr:repo:listRepoShares

-

PATCH /v2/manage/namespaces/{namespace}/repos/{repository}/shares/{share_id}

swr:repo:updateRepoShare

-

POST /v2/manage/namespaces/{namespace}/access

swr:namespace:createNamespaceAccess

-

DELETE /v2/manage/namespaces/{namespace}/access

swr:namespace:deleteNamespaceAccess

-

GET /v2/manage/namespaces/{namespace}/access

swr:namespace:getNamespaceAccess

-

PATCH /v2/manage/namespaces/{namespace}/access

swr:namespace:updateNamespaceAccess

-

资源类型(Resource)

资源类型(Resource)表示身份策略所作用的资源。如表3中的某些操作指定了可以在该操作指定的资源类型,则必须在具有该操作的身份策略语句中指定该资源的URN,身份策略仅作用于此资源;如未指定,Resource默认为“*”,则身份策略将应用到所有资源。您也可以在身份策略中设置条件,从而指定资源类型。

SWR定义了以下可以在自定义身份策略的Resource元素中使用的资源类型。

表3 SWR支持的资源类型

资源类型

URN

repo

swr:<region>:<account-id>:repo:<namespace-name>/<repo-name>

repository

swr:<region>:<account-id>:repository:<instance-name>/<repository-path>

instance

swr:<region>:<account-id>:instance:<instance-name>

namespace

swr:<region>:<account-id>:namespace:<namespace-name>

条件(Condition)

条件(Condition)是身份策略生效的特定条件,包括条件键和运算符。

  • 条件键表示身份策略语句的Condition元素中的键值。根据适用范围,分为全局级条件键和服务级条件键。
    • 全局级条件键(前缀为g:)适用于所有操作,在鉴权过程中,云服务不需要提供用户身份信息,系统将自动获取并鉴权。
    • 服务级条件键(前缀通常为服务缩写,如swr:)仅适用于对应服务的操作。
    • 单值/多值表示API调用时请求中与条件关联的值数。单值条件键在API调用时的请求中最多包含一个值,多值条件键在API调用时请求可以包含多个值。例如:g:SourceVpce是单值条件键,表示仅允许通过某个VPC终端节点发起请求访问某资源,一个请求最多包含一个VPC终端节点ID值。g:TagKeys是多值条件键,表示请求中携带的所有标签的key组成的列表,当用户在调用API请求时传入标签可以传入多个值。
  • 运算符与条件键、条件值一起构成完整的条件判断语句,当请求信息满足该条件时,身份策略才能生效。

SWR定义了以下可以在自定义身份策略的Condition元素中使用的条件键,您可以使用这些条件键进一步细化身份策略语句应用的条件。

表4 SWR支持的服务级条件键

服务级条件键

类型

单值/多值

说明

swr:TargetOrgPath

string

单值

按照共享目标账号所处的组织路径进行权限控制。

swr:TargetOrgId

string

单值

按照共享目标账号所处的组织Id进行权限控制。

swr:TargetAccountId

string

单值

按照共享目标账号Id进行权限控制。

swr:VpcId

string

单值

按照用户VPC ID进行权限控制。

swr:SubnetId

string

单值

按照用户Subnet ID进行权限控制。

swr:EnablePublicNameSpace

boolean

单值

限制企业仓库是否允许创公开组织。

swr:EnableObsEncrypt

boolean

单值

限制企业版实例是否必须使用加密桶。

swr:AllowPublicAccess

boolean

单值

对镜像是否可以公开进行权限控制。

swr:TargetRegion

string

单值

根据目标区域进行权限控制。

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容