计算
弹性云服务器 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

统一身份认证 IAM

更新时间:2025-02-24 GMT+08:00

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

SCP不直接进行授权,只划定权限边界。将SCP绑定到组织单元或者成员账号时,并没有直接对组织单元或成员账号授予操作权限,而是规定了成员账号或组织单元包含的成员账号的授权范围。

本章节介绍组织服务中SCP使用的元素,这些元素包含了操作(Action)、资源(Resource)和条件(Condition)。

如何使用这些元素编辑SCP自定义策略,请参考创建SCP

操作(Action)

操作(Action)即为SCP中支持的授权项。

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

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

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

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

您可以在SCP语句的Action元素中指定以下IAM的相关操作。其中,不带V5后缀的授权项用于控制IAM旧版控制台的访问,带V5后缀的授权项用于控制IAM新版控制台的访问。

表1 IAM支持的授权项

授权项

描述

访问级别

资源类型(*为必须)

条件键

iam::listAccessKeys

授予列举永久访问密钥的权限。

List

-

-

iam::createAccessKey

授予创建永久访问密钥的权限。

Write

-

-

iam::getAccessKey

授予查询永久访问密钥的权限。

Read

-

-

iam::updateAccessKey

授予修改永久访问密钥的权限。

Write

-

-

iam::deleteAccessKey

授予删除永久访问密钥的权限。

Write

-

-

iam:projects:list

授予列举项目的权限。

List

-

-

iam:projects:create

授予创建项目的权限。

Write

-

-

iam:projects:listForUser

授予列举指定用户项目的权限。

List

-

-

iam:projects:update

授予修改项目的权限。

Write

-

-

iam:groups:list

授予列举用户组的权限。

List

-

-

iam:groups:create

授予创建用户组的权限。

Write

-

-

iam:groups:get

授予查询用户组的权限。

Read

-

-

iam:groups:delete

授予删除用户组的权限。

Write

-

-

iam:groups:update

授予修改用户组的权限。

Write

-

-

iam:groups:removeUser

授予从用户组中移除用户的权限。

Write

-

-

iam:groups:listUsers

授予列举指定用户组中用户的权限。

List

-

-

iam:groups:checkUser

授予查询用户是否在用户组中的权限。

Read

-

-

iam:groups:addUser

授予添加用户到用户组的权限。

Write

-

-

iam:users:create

授予创建用户的权限。

Write

-

-

iam:users:get

授予查询用户的权限。

Read

-

-

iam:users:update

授予修改用户的权限。

Write

-

-

iam:users:list

授予列举用户的权限。

List

-

-

iam:users:delete

授予删除用户的权限。

Write

-

-

iam:users:listGroups

授予列举指定用户所属用户组的权限。

List

-

-

iam:users:listVirtualMFADevices

授予列举指定用户所属虚拟MFA设备的权限。

List

-

-

iam:users:createVirtualMFADevice

授予创建虚拟MFA设备密钥的权限。

Write

-

-

iam:users:deleteVirtualMFADevice

授予删除虚拟MFA设备的权限。

Write

-

-

iam:users:getVirtualMFADevice

授予查询虚拟MFA设备的权限。

Read

-

-

iam:users:bindVirtualMFADevice

授予绑定虚拟MFA设备的权限。

Write

-

-

iam:users:unbindVirtualMFADevice

授予解绑虚拟MFA设备的权限。

Write

-

-

iam:identityProviders:list

授予列举身份提供商的权限。

List

-

-

iam:identityProviders:get

授予查询身份提供商的权限。

Read

-

-

iam:identityProviders:create

授予创建身份提供商的权限。

Write

-

-

iam:identityProviders:delete

授予删除身份提供商的权限。

Write

-

-

iam:identityProviders:update

授予修改身份提供商的权限。

Write

-

-

iam:identityProviders:listMappings

授予列举身份提供商映射关系的权限。

List

-

-

iam:identityProviders:getMapping

授予查询身份提供商映射关系的权限。

Read

-

-

iam:identityProviders:createMapping

授予创建身份提供商映射关系的权限。

Write

-

-

iam:identityProviders:deleteMapping

授予删除身份提供商映射关系的权限。

Write

-

-

iam:identityProviders:updateMapping

授予修改身份提供商映射关系的权限。

Write

-

-

iam:identityProviders:listProtocols

授予列举身份提供商协议的权限。

List

-

-

iam:identityProviders:getProtocol

授予查询身份提供商协议的权限。

Read

-

-

iam:identityProviders:createProtocol

授予创建身份提供商协议的权限。

Write

-

-

iam:identityProviders:deleteProtocol

授予删除身份提供商协议的权限。

Write

-

-

iam:identityProviders:updateProtocol

授予修改身份提供商协议的权限。

Write

-

-

iam:identityProviders:getSAMLMetadata

授予查询身份提供商SAML metadata文件的权限。

Read

-

-

iam:identityProviders:createSAMLMetadata

授予创建身份提供商SAML metadata文件的权限。

Write

-

-

iam:identityProviders:getOIDCConfig

授予查询身份提供商OIDC配置的权限。

Read

-

-

iam:identityProviders:createOIDCConfig

授予创建身份提供商OIDC配置的权限。

Write

-

-

iam:identityProviders:updateOIDCConfig

授予修改身份提供商OIDC配置的权限。

Write

-

-

iam:securityPolicies:getProtectPolicy

授予查询操作保护策略的权限。

Read

-

-

iam:securityPolicies:updateProtectPolicy

授予修改操作保护策略的权限。

Write

-

-

iam:securityPolicies:getPasswordPolicy

授予查询密码策略的权限。

Read

-

-

iam:securityPolicies:updatePasswordPolicy

授予修改密码策略的权限。

Write

-

-

iam:securityPolicies:getLoginPolicy

授予查询登录策略的权限。

Read

-

-

iam:securityPolicies:updateLoginPolicy

授予修改登录策略的权限。

Write

-

-

iam:securityPolicies:getConsoleAclPolicy

授予查询控制台访问策略的权限。

Read

-

-

iam:securityPolicies:updateConsoleAclPolicy

授予修改控制台访问策略的权限。

Write

-

-

iam:securityPolicies:getApiAclPolicy

授予查询接口访问策略的权限。

Read

-

-

iam:securityPolicies:updateApiAclPolicy

授予修改接口访问策略的权限。

Write

-

-

iam:users:listLoginProtectSettings

授予列举租户下用户登录保护设置的权限。

List

-

-

iam:users:getLoginProtectSetting

授予查询登录保护设置的权限。

Read

-

-

iam:users:updateLoginProtectSetting

授予修改登录保护设置的权限。

Write

-

-

iam:quotas:list

授予列举配额的权限。

List

-

-

iam:quotas:listForProject

授予查询项目配额的权限。

List

-

-

iam:agencies:pass

授予向云服务传递委托的权限。

Permission_management

agency *

-

iam:roles:list

授予查询权限列表的权限。

List

-

-

iam:roles:get

授予查询权限详情的权限。

Read

-

-

iam::listRoleAssignments

授予查询租户授权记录的权限。

List

-

-

iam:groups:listRolesOnDomain

授予查询全局服务中用户组权限的权限。

List

-

-

iam:groups:listRolesOnProject

授予查询项目服务中用户组权限的权限。

List

-

-

iam:groups:grantRoleOnDomain

授予为用户组授予全局服务权限的权限。

Write

-

-

iam:groups:grantRoleOnProject

授予为用户组授予项目级服务权限的权限。

Write

-

-

iam:groups:checkRoleOnDomain

授予查询用户组是否拥有全局服务权限的权限。

Read

-

-

iam:groups:checkRoleOnProject

授予查询用户组是否拥有项目服务权限的权限。

Read

-

-

iam:groups:listRoles

授予查询用户组的所有权限的权限。

List

-

-

iam:groups:checkRole

授予查询用户组是否拥有指定权限的权限。

Read

-

-

iam:groups:revokeRole

授予移除用户组指定权限的权限。

Write

-

-

iam:groups:revokeRoleOnDomain

授予移除用户组的全局服务权限的权限。

Write

-

-

iam:groups:revokeRoleOnProject

授予移除用户组的项目服务权限的权限。

Write

-

-

iam:groups:grantRole

授予为用户组授予指定权限的权限。

Write

-

-

iam:roles:create

授予创建自定义策略的权限。

Write

-

-

iam:roles:update

授予修改自定义策略的权限。

Write

-

-

iam:roles:delete

授予删除自定义策略的权限。

Write

-

-

iam:agencies:list

授予列出委托的权限。

List

-

-

iam:agencies:get

授予查询指定委托详情的权限。

Read

-

-

iam:agencies:create

授予创建委托的权限。

Write

-

-

iam:agencies:update

授予修改委托的权限。

Write

-

-

iam:agencies:delete

授予删除委托的权限。

Write

-

-

iam:agencies:listRolesOnDomain

授予查询委托拥有的全局服务权限的权限。

List

-

-

iam:agencies:listRolesOnProject

授予查询委托拥有的指定项目权限的权限。

List

-

-

iam:agencies:grantRoleOnDomain

授予为委托授予全局服务权限的权限。

Write

-

-

iam:agencies:grantRoleOnProject

授予为委托授予项目服务权限的权限。

Write

-

-

iam:agencies:checkRoleOnDomain

授予查询委托是否拥有全局服务权限的权限。

Read

-

-

iam:agencies:checkRoleOnProject

授予查询委托是否拥有项目服务权限的权限。

Read

-

-

iam:agencies:revokeRoleOnDomain

授予移除委托的全局服务权限的权限。

Write

-

-

iam:agencies:revokeRoleOnProject

授予移除委托的项目服务权限的权限。

Write

-

-

iam:agencies:listRoles

授予查询委托的所有权限的权限。

List

-

-

iam:agencies:grantRole

授予为委托授予指定权限的权限。

Write

-

-

iam:agencies:checkRole

授予查询委托是否拥有指定权限的权限。

Read

-

-

iam:agencies:revokeRole

授予移除委托的指定权限的权限。

Write

-

-

iam::listGroupsAssignedEnterpriseProject

授予查询企业项目关联的用户组的权限。

List

-

-

iam:groups:listRolesOnEnterpriseProject

授予查询企业项目已关联用户组的权限的权限。

List

-

-

iam:groups:grantRoleOnEnterpriseProject

授予基于用户组为企业项目授权的权限。

Write

-

-

iam:groups:revokeRoleOnEnterpriseProject

授予删除企业项目关联的用户组权限的权限。

Write

-

-

iam:groups:listAssignedEnterpriseProjects

授予查询用户组直接关联的企业项目的权限。

List

-

-

iam:users:listAssignedEnterpriseProjects

授予查询用户直接关联的企业项目的权限。

List

-

-

iam::listUsersAssignedEnterpriseProject

授予查询企业项目直接关联用户的权限。

List

-

-

iam:users:listRolesOnEnterpriseProject

授予查询企业项目直接关联用户权限的权限。

List

-

-

iam:users:grantRoleOnEnterpriseProject

授予基于用户为企业项目授权的权限。

Write

-

-

iam:users:revokeRoleOnEnterpriseProject

授予删除企业项目直接关联用户的权限的权限。

Write

-

-

iam:agencies:grantRoleOnEnterpriseProject

授予基于委托为企业项目授权的权限。

Write

-

-

iam:agencies:revokeRoleOnEnterpriseProject

授予删除企业项目关联的委托的权限的权限。

Write

-

-

iam:mfa:listVirtualMFADevicesV5

授予列举虚拟MFA设备的权限。

List

mfa *

-

iam:mfa:createVirtualMFADeviceV5

授予创建虚拟MFA设备的权限。

Write

mfa *

-

iam:mfa:deleteVirtualMFADeviceV5

授予删除虚拟MFA设备的权限。

Write

mfa *

-

iam:mfa:enableV5

授予启用虚拟MFA设备的权限。

Write

mfa *

-

iam:mfa:disableV5

授予禁用虚拟MFA设备的权限。

Write

mfa *

-

iam:securitypolicies:getPasswordPolicyV5

授予获取密码策略信息的权限。

Read

-

-

iam:securitypolicies:updatePasswordPolicyV5

授予修改密码策略的权限。

Write

-

-

iam:securitypolicies:getLoginPolicyV5

授予获取登录策略信息的权限。

Read

-

-

iam:securitypolicies:updateLoginPolicyV5

授予修改登录策略的权限。

Write

-

-

iam:credentials:listCredentialsV5

授予权限以列举IAM用户的永久访问密钥。

List

user *

g:ResourceTag/<tag-key>

iam:credentials:showAccessKeyLastUsedV5

授予获取指定永久访问密钥最后一次使用时间的权限。

Read

user *

g:ResourceTag/<tag-key>

iam:credentials:createCredentialV5

授予为IAM用户创建永久访问密钥的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:credentials:updateCredentialV5

授予为IAM用户修改永久访问密钥的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:credentials:deleteCredentialV5

授予为IAM用户删除永久访问密钥的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:users:changePasswordV5

授予IAM用户修改自己密码的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:users:showLoginProfileV5

授予获取IAM用户登录信息的权限。

Read

user *

g:ResourceTag/<tag-key>

iam:users:createLoginProfileV5

授予为IAM用户创建登录信息的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:users:updateLoginProfileV5

授予为IAM用户修改登录信息的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:users:deleteLoginProfileV5

授予为IAM用户删除登录信息的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:users:listUsersV5

授予列举IAM用户的权限。

List

user *

-

iam:users:getUserV5

授予获取IAM用户信息的权限。

Read

user *

g:ResourceTag/<tag-key>

iam:users:showUserLastLoginV5

授予获取IAM用户最后一次登录时间的权限。

Read

user *

g:ResourceTag/<tag-key>

iam:users:createUserV5

授予创建IAM用户的权限。

Write

user *

-

iam:users:updateUserV5

授予修改IAM用户的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:users:deleteUserV5

授予删除IAM用户的权限。

Write

user *

g:ResourceTag/<tag-key>

iam:groups:listGroupsV5

授予列举用户组的权限。

List

group *

-

iam:groups:getGroupV5

授予获取用户组信息的权限。

Read

group *

-

iam:groups:createGroupV5

授予创建用户组的权限。

Write

group *

-

iam:groups:updateGroupV5

授予修改用户组的权限。

Write

group *

-

iam:groups:deleteGroupV5

授予删除用户组的权限。

Write

group *

-

iam:permissions:addUserToGroupV5

授予添加IAM用户到用户组的权限。

Write

group *

-

iam:permissions:removeUserFromGroupV5

授予从用户组中移除IAM用户的权限。

Write

group *

-

iam:policies:listV5

授予列举身份策略的权限。

List

policy *

-

iam:policies:getV5

授予获取身份策略信息的权限。

Read

policy *

-

iam:policies:createV5

授予创建自定义身份策略的权限。

Permission_management

policy *

-

iam:policies:deleteV5

授予删除自定义身份策略的权限。

Permission_management

policy *

-

iam:policies:listVersionsV5

授予列举身份策略版本的权限。

List

policy *

-

iam:policies:getVersionV5

授予获取身份策略版本信息的权限。

Read

policy *

-

iam:policies:createVersionV5

授予为自定义身份策略创建新版本的权限。

Permission_management

policy *

-

iam:policies:deleteVersionV5

授予为自定义身份策略删除版本的权限。

Permission_management

policy *

-

iam:policies:setDefaultVersionV5

授予设置自定义身份策略默认版本的权限。

Permission_management

policy *

-

iam:agencies:attachPolicyV5

授予为委托或信任委托附加身份策略的权限。

Permission_management

agency *

g:ResourceTag/<tag-key>

-

iam:PolicyURN

iam:groups:attachPolicyV5

授予为用户组附加身份策略的权限。

Permission_management

group *

-

-

iam:PolicyURN

iam:users:attachPolicyV5

授予为IAM用户附加身份策略的权限。

Permission_management

user *

g:ResourceTag/<tag-key>

-

iam:PolicyURN

iam:agencies:detachPolicyV5

授予为委托或信任委托分离身份策略的权限。

Permission_management

agency *

g:ResourceTag/<tag-key>

-

iam:PolicyURN

iam:groups:detachPolicyV5

授予为用户组分离身份策略的权限。

Permission_management

group *

-

-

iam:PolicyURN

iam:users:detachPolicyV5

授予为IAM用户分离身份策略的权限。

Permission_management

user *

g:ResourceTag/<tag-key>

-

iam:PolicyURN

iam:policies:listEntitiesV5

授予权限以列举附加在身份策略上的所有实体。

List

policy *

-

iam:agencies:listAttachedPoliciesV5

授予权限以列举委托或信任委托附加的身份策略。

List

agency *

g:ResourceTag/<tag-key>

iam:groups:listAttachedPoliciesV5

授予权限以列举用户组附加的身份策略。

List

group *

-

iam:users:listAttachedPoliciesV5

授予权限以列举IAM用户附加的身份策略。

List

user *

g:ResourceTag/<tag-key>

iam:agencies:createServiceLinkedAgencyV5

授予创建服务关联委托的权限以允许云服务代表您执行操作。

Write

agency *

-

-

iam:ServicePrincipal

iam:agencies:deleteServiceLinkedAgencyV5

授予删除服务关联委托的权限。

Write

agency *

g:ResourceTag/<tag-key>

-

iam:ServicePrincipal

iam:agencies:getServiceLinkedAgencyDeletionStatusV5

授予获取服务关联委托删除状态的权限。

Read

agency *

-

iam:agencies:listV5

授予列举委托及信任委托的权限。

List

agency *

-

iam:agencies:getV5

授予获取委托或信任委托信息的权限。

Read

agency *

g:ResourceTag/<tag-key>

iam:agencies:createV5

授予创建信任委托的权限。

Write

agency *

-

iam:agencies:updateV5

授予修改信任委托的权限。

Write

agency *

g:ResourceTag/<tag-key>

iam:agencies:deleteV5

授予删除信任委托的权限。

Write

agency *

g:ResourceTag/<tag-key>

iam:agencies:updateTrustPolicyV5

授予修改信任委托信任策略的权限。

Write

agency *

g:ResourceTag/<tag-key>

iam::listTagsForResourceV5

授予列举资源标签的权限。

List

agency

g:ResourceTag/<tag-key>

user

g:ResourceTag/<tag-key>

iam::tagForResourceV5

授予设置资源标签的权限。

Tagging

agency

g:ResourceTag/<tag-key>

user

g:ResourceTag/<tag-key>

-

iam::untagForResourceV5

授予删除资源标签的权限。

Tagging

agency

g:ResourceTag/<tag-key>

user

g:ResourceTag/<tag-key>

-

iam::getAccountSummaryV5

授予获取此账号中IAM实体使用情况和IAM配额的摘要信息的权限。

List

-

-

iam::getAsymmetricSignatureSwitchV5

授予获取临时令牌非对称签名开关状态的权限。

Read

-

-

iam::setAsymmetricSignatureSwitchV5

授予设置临时令牌非对称签名开关状态的权限。

Write

-

-

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

表2 API与操作项的关系

API

对应的操作项

依赖的操作项

GET /v3.0/OS-CREDENTIAL/credentials

iam::listAccessKeys

-

POST /v3.0/OS-CREDENTIAL/credentials

iam::createAccessKey

-

GET /v3.0/OS-CREDENTIAL/credentials/{access_key}

iam::getAccessKey

-

PUT /v3.0/OS-CREDENTIAL/credentials/{access_key}

iam::updateAccessKey

-

DELETE /v3.0/OS-CREDENTIAL/credentials/{access_key}

iam::deleteAccessKey

-

GET /v3.0/OS-QUOTA/domains/{domain_id}

iam:quotas:list

-

GET /v3.0/OS-QUOTA/projects/{project_id}

iam:quotas:listForProject

-

GET /v3/projects

iam:projects:list

-

POST /v3/projects

iam:projects:create

-

GET /v3/users/{user_id}/projects

iam:projects:listForUser

-

PATCH /v3/projects/{project_id}

iam:projects:update

-

PUT /v3-ext/projects/{project_id}

iam:projects:update

-

GET /v3/groups

iam:groups:list

-

POST /v3/groups

iam:groups:create

-

GET /v3/groups/{group_id}

iam:groups:get

-

DELETE /v3/groups/{group_id}

iam:groups:delete

-

PATCH /v3/groups/{group_id}

iam:groups:update

-

GET /v3/groups/{group_id}/users

iam:groups:listUsers

-

HEAD /v3/groups/{group_id}/users/{user_id}

iam:groups:checkUser

-

PUT /v3/groups/{group_id}/users/{user_id}

iam:groups:addUser

-

DELETE /v3/groups/{group_id}/users/{user_id}

iam:groups:removeUser

-

POST /v3.0/OS-USER/users

iam:users:create

-

GET /v3.0/OS-USER/users/{user_id}

iam:users:get

-

PUT /v3.0/OS-USER/users/{user_id}

iam:users:update

-

PUT /v3.0/OS-USER/users/{user_id}/info

iam:users:update

-

GET /v3/users

iam:users:list

-

POST /v3/users

iam:users:create

-

GET /v3/users/{user_id}

iam:users:get

-

DELETE /v3/users/{user_id}

iam:users:delete

-

PATCH /v3/users/{user_id}

iam:users:update

-

GET /v3/users/{user_id}/groups

iam:users:listGroups

-

GET /v3.0/OS-MFA/virtual-mfa-devices

iam:users:listVirtualMFADevices

-

POST /v3.0/OS-MFA/virtual-mfa-devices

iam:users:createVirtualMFADevice

-

DELETE /v3.0/OS-MFA/virtual-mfa-devices

iam:users:deleteVirtualMFADevice

-

GET /v3.0/OS-MFA/users/{user_id}/virtual-mfa-device

iam:users:getVirtualMFADevice

-

PUT /v3.0/OS-MFA/mfa-devices/bind

iam:users:bindVirtualMFADevice

-

PUT /v3.0/OS-MFA/mfa-devices/unbind

iam:users:unbindVirtualMFADevice

-

GET /v3.0/OS-USER/login-protects

iam:users:listLoginProtectSettings

-

GET /v3.0/OS-USER/users/{user_id}/login-protect

iam:users:getLoginProtectSetting

-

PUT /v3.0/OS-USER/users/{user_id}/login-protect

iam:users:updateLoginProtectSetting

-

GET /v3/OS-FEDERATION/identity_providers

iam:identityProviders:list

-

GET /v3/OS-FEDERATION/identity_providers/{id}

iam:identityProviders:get

-

PUT /v3/OS-FEDERATION/identity_providers/{id}

iam:identityProviders:create

-

DELETE /v3/OS-FEDERATION/identity_providers/{id}

iam:identityProviders:delete

-

PATCH /v3/OS-FEDERATION/identity_providers/{id}

iam:identityProviders:update

-

GET /v3/OS-FEDERATION/mappings

iam:identityProviders:listMappings

-

GET /v3/OS-FEDERATION/mappings/{id}

iam:identityProviders:getMapping

-

PUT /v3/OS-FEDERATION/mappings/{id}

iam:identityProviders:createMapping

-

DELETE /v3/OS-FEDERATION/mappings/{id}

iam:identityProviders:deleteMapping

-

PATCH /v3/OS-FEDERATION/mappings/{id}

iam:identityProviders:updateMapping

-

GET /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols

iam:identityProviders:listProtocols

-

GET /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}

iam:identityProviders:getProtocol

-

PUT /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}

iam:identityProviders:createProtocol

-

DELETE /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}

iam:identityProviders:deleteProtocol

-

PATCH /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}

iam:identityProviders:updateProtocol

-

GET /v3-ext/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}/metadata

iam:identityProviders:getSAMLMetadata

-

POST /v3-ext/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}/metadata

iam:identityProviders:createSAMLMetadata

-

GET /v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config

iam:identityProviders:getOIDCConfig

-

POST /v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config

iam:identityProviders:createOIDCConfig

-

PUT /v3.0/OS-FEDERATION/identity-providers/{idp_id}/openid-connect-config

iam:identityProviders:updateOIDCConfig

-

GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/protect-policy

iam:securityPolicies:getProtectPolicy

-

PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/protect-policy

iam:securityPolicies:updateProtectPolicy

-

GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/password-policy

iam:securityPolicies:getPasswordPolicy

-

PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/password-policy

iam:securityPolicies:updatePasswordPolicy

-

GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/login-policy

iam:securityPolicies:getLoginPolicy

-

PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/login-policy

iam:securityPolicies:updateLoginPolicy

-

GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/console-acl-policy

iam:securityPolicies:getConsoleAclPolicy

-

PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/console-acl-policy

iam:securityPolicies:updateConsoleAclPolicy

-

GET /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/api-acl-policy

iam:securityPolicies:getApiAclPolicy

-

PUT /v3.0/OS-SECURITYPOLICY/domains/{domain_id}/api-acl-policy

iam:securityPolicies:updateApiAclPolicy

-

GET /v3/roles

iam:roles:list

-

GET /v3/roles/{role_id}

iam:roles:get

-

GET /v3.0/OS-PERMISSION/role-assignments

iam::listRoleAssignments

-

GET /v3/domains/{domain_id}/groups/{group_id}/roles

iam:groups:listRolesOnDomain

-

GET /v3/projects/{project_id}/groups/{group_id}/roles

iam:groups:listRolesOnProject

-

PUT /v3/domains/{domain_id}/groups/{group_id}/roles/{role_id}

iam:groups:grantRoleOnDomain

-

PUT /v3/projects/{project_id}/groups/{group_id}/roles/{role_id}

iam:groups:grantRoleOnProject

-

HEAD /v3/domains/{domain_id}/groups/{group_id}/roles/{role_id}

iam:groups:checkRoleOnDomain

-

HEAD /v3/projects/{project_id}/groups/{group_id}/roles/{role_id}

iam:groups:checkRoleOnProject

-

GET /v3/OS-INHERIT/domains/{domain_id}/groups/{group_id}/roles/inherited_to_projects

iam:groups:listRoles

-

HEAD /v3/OS-INHERIT/domains/{domain_id}/groups/{group_id}/roles/{role_id}/inherited_to_projects

iam:groups:checkRole

-

DELETE /v3/OS-INHERIT/domains/{domain_id}/groups/{group_id}/roles/{role_id}/inherited_to_projects

iam:groups:revokeRole

-

DELETE /v3/domains/{domain_id}/groups/{group_id}/roles/{role_id}

iam:groups:revokeRoleOnDomain

-

DELETE /v3/projects/{project_id}/groups/{group_id}/roles/{role_id}

iam:groups:revokeRoleOnProject

-

PUT /v3/OS-INHERIT/domains/{domain_id}/groups/{group_id}/roles/{role_id}/inherited_to_projects

iam:groups:grantRole

-

GET /v3.0/OS-ROLE/roles

iam:roles:list

-

GET /v3.0/OS-ROLE/roles/{role_id}

iam:roles:get

-

POST /v3.0/OS-ROLE/roles

iam:roles:create

-

POST /v3.0/OS-ROLE/roles

iam:roles:create

-

PATCH /v3.0/OS-ROLE/roles/{role_id}

iam:roles:update

-

PATCH /v3.0/OS-ROLE/roles/{role_id}

iam:roles:update

-

DELETE /v3.0/OS-ROLE/roles/{role_id}

iam:roles:delete

-

GET /v3.0/OS-AGENCY/agencies

iam:agencies:list

-

GET /v3.0/OS-AGENCY/agencies/{agency_id}

iam:agencies:get

-

POST /v3.0/OS-AGENCY/agencies

iam:agencies:create

-

PUT /v3.0/OS-AGENCY/agencies/{agency_id}

iam:agencies:update

-

DELETE /v3.0/OS-AGENCY/agencies/{agency_id}

iam:agencies:delete

-

GET /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles

iam:agencies:listRolesOnDomain

-

GET /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles

iam:agencies:listRolesOnProject

-

PUT /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}

iam:agencies:grantRoleOnDomain

-

PUT /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id}

iam:agencies:grantRoleOnProject

-

HEAD /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}

iam:agencies:checkRoleOnDomain

-

HEAD /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id}

iam:agencies:checkRoleOnProject

-

DELETE /v3.0/OS-AGENCY/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}

iam:agencies:revokeRoleOnDomain

-

DELETE /v3.0/OS-AGENCY/projects/{project_id}/agencies/{agency_id}/roles/{role_id}

iam:agencies:revokeRoleOnProject

-

GET /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/inherited_to_projects

iam:agencies:listRoles

-

PUT /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}/inherited_to_projects

iam:agencies:grantRole

-

HEAD /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}/inherited_to_projects

iam:agencies:checkRole

-

DELETE /v3.0/OS-INHERIT/domains/{domain_id}/agencies/{agency_id}/roles/{role_id}/inherited_to_projects

iam:agencies:revokeRole

-

GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups

iam::listGroupsAssignedEnterpriseProject

-

GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups/{group_id}/roles

iam:groups:listRolesOnEnterpriseProject

-

PUT /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups/{group_id}/roles/{role_id}

iam:groups:grantRoleOnEnterpriseProject

-

DELETE /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/groups/{group_id}/roles/{role_id}

iam:groups:revokeRoleOnEnterpriseProject

-

GET /v3.0/OS-PERMISSION/groups/{group_id}/enterprise-projects

iam:groups:listAssignedEnterpriseProjects

-

GET /v3.0/OS-PERMISSION/users/{user_id}/enterprise-projects

iam:users:listAssignedEnterpriseProjects

-

GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users

iam::listUsersAssignedEnterpriseProject

-

GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles

iam:users:listRolesOnEnterpriseProject

-

PUT /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles/{role_id}

iam:users:grantRoleOnEnterpriseProject

-

DELETE /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles/{role_id}

iam:users:revokeRoleOnEnterpriseProject

-

PUT /v3.0/OS-PERMISSION/subjects/agency/scopes/enterprise-project/role-assignments

iam:agencies:grantRoleOnEnterpriseProject

-

DELETE /v3.0/OS-PERMISSION/subjects/agency/scopes/enterprise-project/role-assignments

iam:agencies:revokeRoleOnEnterpriseProject

-

资源类型(Resource)

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

IAM定义了以下可以在SCP的Resource元素中使用的资源类型。

表3 IAM支持的资源类型

资源类型

URN

policy

iam::<account-id>:policy:<policy-name-with-path>

agency

iam::<account-id>:agency:<agency-name-with-path>

user

iam::<account-id>:user:<user-name>

group

iam::<account-id>:group:<group-name>

mfa

iam::<account-id>:mfa:<mfa-name>

条件(Condition)

条件(Condition)是自定义SCP生效的特定条件,包括条件键运算符

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

IAM定义了以下可以在SCP的Condition元素中使用的条件键,您可以使用这些条件键进一步细化SCP语句应用的条件。

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

服务级条件键

类型

单值/多值

说明

iam:PolicyURN

string

单值

按照身份策略的URN筛选访问权限。

iam:ServicePrincipal

string

单值

按照服务关联委托传递的云服务对应的服务标识筛选访问权限。

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

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容