IAM身份中心
Organizations服务中的服务控制策略(Service Control Policy,以下简称SCP)可以使用以下授权项元素设置访问控制策略。
SCP不直接进行授权,只划定权限边界。将SCP绑定到组织单元或者成员账号时,并没有直接对组织单元或成员账号授予操作权限,而是规定了成员账号或组织单元包含的成员账号的授权范围。
本章节介绍组织服务中SCP使用的元素,这些元素包含了操作(Action)、资源(Resource)和条件(Condition)。
如何使用这些元素编辑SCP自定义策略,请参考创建SCP。
操作(Action)
操作(Action)即为SCP中支持的授权项。
- “访问级别”列描述如何对操作进行分类(list、read和write等)。此分类可帮助您了解在SCP中相应操作对应的访问级别。
- “资源类型”列指每个操作是否支持资源级权限。
- 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在策略语句的Resource元素中指定所有资源类型(“*”)。
- 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。
- 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。
关于IAM身份中心定义的资源类型的详细信息请参见资源类型(Resource)。
- “条件键”列包括了可以在SCP语句的Condition元素中支持指定的键值。
- 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。
- 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。
- 如果此列条件键没有值(-),表示此操作不支持指定条件键。
关于IAM身份中心定义的条件键的详细信息请参见条件(Condition)。
您可以在SCP语句的Action元素中指定以下IAM身份中心的相关操作。
授权项 |
描述 |
访问级别 |
资源类型(*为必须) |
条件键 |
---|---|---|---|---|
IdentityCenter:permissionSet:create |
授予创建权限集的权限。 |
write |
instance * |
- |
- |
|
|||
IdentityCenter:permissionSet:attachManagedPolicy |
授予将系统身份策略添加到权限集的权限。 |
permission_management |
instance * |
- |
permissionSet * |
- |
|||
IdentityCenter:permissionSet:detachManagedPolicy |
授予从指定权限集中分离添加的系统身份策略的权限。 |
permission_management |
instance * |
- |
permissionSet * |
- |
|||
IdentityCenter:permissionSet:update |
授予更新指定实例的权限集的权限。 |
permission_management |
instance * |
- |
permissionSet * |
- |
|||
IdentityCenter:permissionSet:delete |
授予删除指定实例的权限集的权限。 |
write |
instance * |
- |
permissionSet * |
- |
|||
IdentityCenter:permissionSet:list |
授予列出指定实例的权限集的权限。 |
list |
instance * |
- |
IdentityCenter:permissionSet:listAccountsForProvisioned |
授予列出指定权限集已授权的所有账号的权限。 |
list |
permissionSet * |
- |
instance * |
- |
|||
IdentityCenter:permissionSet:listProvisioningStatus |
授予列出指定实例的权限集授权请求的处理状态的权限。 |
list |
instance * |
- |
IdentityCenter:permissionSet:listManagedPolicies |
授予列出添加到指定权限集的系统身份策略的权限。 |
list |
instance * |
- |
permissionSet * |
- |
|||
IdentityCenter:permissionSet:listProvisionedToAccount |
授予列出授权给指定账号的所有权限集的权限。 |
list |
account * |
- |
instance * |
- |
|||
IdentityCenter:permissionSet:describeProvisioningStatus |
授予获取权限集授权请求的处理状态详细信息的权限。 |
read |
instance * |
- |
IdentityCenter:permissionSet:describe |
授予获取指定实例的权限集详细信息的权限。 |
read |
instance * |
- |
permissionSet * |
- |
|||
IdentityCenter:permissionSet:provision |
授予将指定权限集授权给指定目标的权限。 |
write |
account * |
- |
instance * |
- |
|||
permissionSet * |
- |
|||
IdentityCenter:instance:getIdentityCenterStatus |
授予查询IAM身份中心服务状态的权限。 |
read |
- |
- |
IdentityCenter:instance:registerRegion |
授予注册region的权限。 |
write |
- |
- |
IdentityCenter:instance:describeRegisteredRegions |
授予查询IAM身份中心已开通的region的权限。 |
read |
- |
- |
IdentityCenter:instance:startIdentityCenter |
授予开通IAM身份中心的权限。 |
write |
- |
- |
IdentityCenter:instance:deleteIdentityCenter |
授予关闭IAM身份中心的权限。 |
write |
- |
- |
IdentityCenter:instance:list |
授予查询IAM身份中心实例列表的权限。 |
list |
- |
- |
IdentityCenter:accountAssignment:create |
授予使用指定权限集为指定账号分配对主体的访问权限的权限。 |
write |
instance * |
- |
account * |
- |
|||
permissionSet * |
- |
|||
IdentityCenter:accountAssignment:delete |
授予使用指定权限集从指定账号删除主体访问权限的权限。 |
write |
instance * |
- |
account * |
- |
|||
permissionSet * |
- |
|||
IdentityCenter:accountAssignment:list |
授予列出具有指定权限集的指定账号的受让人的权限。 |
list |
instance * |
- |
account * |
- |
|||
permissionSet * |
- |
|||
IdentityCenter:accountAssignment:describeDeletionStatus |
授予获取分配删除请求的处理状态详细信息的权限。 |
read |
instance * |
- |
IdentityCenter:accountAssignment:describeCreationStatus |
授予获取分配创建请求的处理状态详细信息的权限。 |
read |
instance * |
- |
IdentityCenter:accountAssignment:listCreationStatus |
授予列出指定IAM身份中心实例的账号分配创建请求的处理状态的权限。 |
list |
instance * |
- |
IdentityCenter:accountAssignment:listDeletionStatus |
授予列出指定IAM身份中心实例的账号分配删除请求的处理状态的权限。 |
list |
instance * |
- |
IdentityCenter:accountAssignment:listProfileAssociation |
授予查询账号、权限集关联的所有用户或用户组的权限。 |
read |
- |
- |
IdentityCenter:accountAssignment:disassociationProfile |
授予解除用户或用户组绑定的所有授权的权限。 |
write |
- |
- |
IdentityCenter:instance:listIdentityStoreAssociations |
授予查询关联到IAM身份中心的身份源详细信息的权限。 |
read |
- |
- |
IdentityCenter:ssoConfiguration:update |
授予更新当前IAM身份中心实例配置的权限。 |
write |
- |
- |
IdentityCenter:ssoConfiguration:describe |
授予获取当前IAM身份中心实例配置的权限。 |
read |
- |
- |
IdentityCenter:mfaDevices:describeManagementSettings |
授予获取MFA管理设置信息的权限。 |
read |
- |
- |
IdentityCenter:mfaDevices:updateManagementSettings |
授予更新MFA管理设置信息的权限。 |
write |
- |
- |
IdentityCenter:instance:createAlias |
授予为指定的身份源创建别名的权限。 |
write |
- |
- |
IdentityCenter:user:create |
授予创建用户的权限。 |
write |
- |
- |
IdentityCenter:user:list |
授予查询用户列表的权限。 |
read |
- |
- |
IdentityCenter:user:describe |
授予查询用户详情的权限。 |
read |
- |
- |
IdentityCenter:user:describeUsers |
授予批量获取用户详情的权限。 |
read |
- |
- |
IdentityCenter:user:update |
授予更新用户的权限。 |
write |
- |
- |
IdentityCenter:user:delete |
授予删除用户的权限。 |
write |
- |
- |
IdentityCenter:user:getUserId |
授予获取用户ID的权限。 |
read |
- |
- |
IdentityCenter:user:enableUser |
授予启用用户的权限。 |
write |
- |
- |
IdentityCenter:user:disableUser |
授予停用用户的权限。 |
write |
- |
- |
IdentityCenter:group:create |
授予创建用户组的权限。 |
write |
- |
- |
IdentityCenter:group:list |
授予查询用户组列表的权限。 |
read |
- |
- |
IdentityCenter:group:describe |
授予查询用户组详情的权限。 |
read |
- |
- |
IdentityCenter:group:describeGroups |
授予批量获取用户组详情的权限。 |
read |
- |
- |
IdentityCenter:group:update |
授予更新用户组的权限。 |
write |
- |
- |
IdentityCenter:group:delete |
授予删除用户组的权限。 |
write |
- |
- |
IdentityCenter:group:getGroupId |
授予获取用户组Id的权限。 |
read |
- |
- |
IdentityCenter:groupMembership:create |
授予绑定用户与用户组的权限。 |
write |
- |
- |
IdentityCenter:groupMemberships:list |
授予查询用户组的所有成员的权限。 |
read |
- |
- |
IdentityCenter:groupMembership:listForMember |
授予查询用户加入的所有用户组的权限。 |
read |
- |
- |
IdentityCenter:groupMembership:describe |
授予查询绑定关系详情的权限。 |
read |
- |
- |
IdentityCenter:groupMembership:delete |
授予解绑用户和用户组的权限。 |
write |
- |
- |
IdentityCenter:groupMembership:getGroupMembershipId |
授予查询绑定关系ID的权限。 |
read |
- |
- |
IdentityCenter:groupMembership:isMembershipInGroup |
授予查询用户是否绑定在用户组的权限。 |
read |
- |
- |
IdentityCenter:externalIdp:create |
授予创建外部身份提供商的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:list |
授予获取外部身份提供商身份源配置的权限。 |
read |
- |
- |
IdentityCenter:externalIdp:enable |
授予启用外部身份提供商的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:disable |
授予停用外部身份提供商的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:getSpConfiguration |
授予获取IAM身份中心服务提供商配置的权限。 |
read |
- |
- |
IdentityCenter:externalIdp:update |
授予更新外部身份提供商配置的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:delete |
授予删除外部身份提供商配置的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:importCertificate |
授予导入证书的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:deleteCertificate |
授予删除证书的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:listCertificates |
授予获取证书列表的权限。 |
read |
- |
- |
IdentityCenter:externalIdp:createProvisioningTenant |
授予创建Tenant的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:listProvisioningTenant |
授予查询Tenant列表的权限。 |
read |
- |
- |
IdentityCenter:externalIdp:deleteProvisioningTenant |
授予删除Tenant的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:createBearerToken |
授予创建Bearer Token的权限。 |
write |
- |
- |
IdentityCenter:externalIdp:listBearerTokens |
授予查询Bearer Token列表的权限。 |
read |
- |
- |
IdentityCenter:externalIdp:deleteBearerToken |
授予删除Bearer Token的权限。 |
write |
- |
- |
IdentityCenter:user:updatePassword |
授予通过电子邮件发送密码重置链接或者生成一次性密码的方式为用户更新密码的权限。 |
write |
- |
- |
IdentityCenter:user:deleteUserMfaDevice |
授予为指定用户删除MFA设备的权限。 |
write |
- |
- |
IdentityCenter:user:updateMfaDevice |
授予更新MFA设备信息的权限。 |
write |
- |
- |
IdentityCenter:user:listMfaDevice |
授予查询MFA设备列表的权限。 |
read |
- |
- |
IdentityCenter:user:registerVirtualMfaDevice |
授予开始虚拟MFA设备创建过程的权限。 |
write |
- |
- |
IdentityCenter:user:verifyEmail |
授予验证用户电子邮件地址的权限。 |
write |
- |
- |
IAM身份中心的API通常对应着一个或多个授权项。表2展示了API与授权项的关系,以及该API需要依赖的授权项。
API |
对应的授权项 |
依赖的授权项 |
---|---|---|
POST /v1/instances/{instance_id}/permission-sets |
IdentityCenter:permissionSet:create |
organizations:delegatedAdministrators:list |
POST /v1/instances/{instance_id}/permission-sets/{permission_set_id}/attach-managed-policy |
IdentityCenter:permissionSet:attachManagedPolicy |
|
POST /v1/instances/{instance_id}/permission-sets/{permission_set_id}/detach-managed-policy |
IdentityCenter:permissionSet:detachManagedPolicy |
organizations:delegatedAdministrators:list |
PUT /v1/instances/{instance_id}/permission-sets/{permission_set_id} |
IdentityCenter:permissionSet:update |
organizations:delegatedAdministrators:list |
DELETE /v1/instances/{instance_id}/permission-sets/{permission_set_id} |
IdentityCenter:permissionSet:delete |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/permission-sets |
IdentityCenter:permissionSet:list |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/permission-sets/{permission_set_id}/accounts |
IdentityCenter:permissionSet:listAccountsForProvisioned |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/permission-sets/provisioning-statuses |
IdentityCenter:permissionSet:listProvisioningStatus |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/permission-sets/{permission_set_id}/managed-policies |
IdentityCenter:permissionSet:listManagedPolicies |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/permission-sets/provisioned-to-accounts |
IdentityCenter:permissionSet:listProvisionedToAccount |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/permission-sets/provisioning-status/{request_id} |
IdentityCenter:permissionSet:describeProvisioningStatus |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/permission-sets/{permission_set_id} |
IdentityCenter:permissionSet:describe |
organizations:delegatedAdministrators:list |
POST /v1/instances/{instance_id}/permission-sets/{permission_set_id}/provision |
IdentityCenter:permissionSet:provision |
organizations:delegatedAdministrators:list |
GET /v1/instances |
IdentityCenter:instance:list |
organizations:delegatedAdministrators:list |
POST /v1/instances/{instance_id}/account-assignments/create |
IdentityCenter:accountAssignment:create |
organizations:delegatedAdministrators:list |
POST /v1/instances/{instance_id}/account-assignments/delete |
IdentityCenter:accountAssignment:delete |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/account-assignments |
IdentityCenter:accountAssignment:list |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/account-assignments/deletion-status/{request_id} |
IdentityCenter:accountAssignment:describeDeletionStatus |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/account-assignments/creation-status/{request_id} |
IdentityCenter:accountAssignment:describeCreationStatus |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/account-assignments/creation-statuses |
IdentityCenter:accountAssignment:listCreationStatus |
organizations:delegatedAdministrators:list |
GET /v1/instances/{instance_id}/account-assignments/deletion-statuses |
IdentityCenter:accountAssignment:listDeletionStatus |
organizations:delegatedAdministrators:list |
POST /v1/identity-stores/{identity_store_id}/users |
IdentityCenter:user:create |
organizations:delegatedAdministrators:list |
GET /v1/identity-stores/{identity_store_id}/users |
IdentityCenter:user:list |
organizations:delegatedAdministrators:list |
GET /v1/identity-stores/{identity_store_id}/users/{user_id} |
IdentityCenter:user:describe |
organizations:delegatedAdministrators:list |
PUT /v1/identity-stores/{identity_store_id}/users/{user_id} |
IdentityCenter:user:update |
organizations:delegatedAdministrators:list |
DELETE /v1/identity-stores/{identity_store_id}/users/{user_id} |
IdentityCenter:user:delete |
organizations:delegatedAdministrators:list |
POST /v1/identity-stores/{identity_store_id}/users/retrieve-user-id |
IdentityCenter:user:getUserId |
organizations:delegatedAdministrators:list |
POST /v1/identity-stores/{identity_store_id}/groups |
IdentityCenter:group:create |
organizations:delegatedAdministrators:list |
GET /v1/identity-stores/{identity_store_id}/groups |
IdentityCenter:group:list |
organizations:delegatedAdministrators:list |
GET /v1/identity-stores/{identity_store_id}/groups/{group_id} |
IdentityCenter:group:describe |
organizations:delegatedAdministrators:list |
PUT /v1/identity-stores/{identity_store_id}/groups/{group_id} |
IdentityCenter:group:update |
organizations:delegatedAdministrators:list |
DELETE /v1/identity-stores/{identity_store_id}/groups/{group_id} |
IdentityCenter:group:delete |
organizations:delegatedAdministrators:list |
POST /v1/identity-stores/{identity_store_id}/groups/retrieve-group-id |
IdentityCenter:group:getGroupId |
organizations:delegatedAdministrators:list |
POST /v1/identity-stores/{identity_store_id}/group-memberships |
IdentityCenter:groupMembership:create |
organizations:delegatedAdministrators:list |
GET /v1/identity-stores/{identity_store_id}/group-memberships |
IdentityCenter:groupMemberships:list |
organizations:delegatedAdministrators:list |
GET /v1/identity-stores/{identity_store_id}/group-memberships-for-member |
IdentityCenter:groupMembership:listForMember |
organizations:delegatedAdministrators:list |
GET /v1/identity-stores/{identity_store_id}/group-memberships/{membership_id} |
IdentityCenter:groupMembership:describe |
organizations:delegatedAdministrators:list |
DELETE /v1/identity-stores/{identity_store_id}/group-memberships/{membership_id} |
IdentityCenter:groupMembership:delete |
organizations:delegatedAdministrators:list |
POST /v1/identity-stores/{identity_store_id}/group-memberships/retrieve-group-membership-id |
IdentityCenter:groupMembership:getGroupMembershipId |
organizations:delegatedAdministrators:list |
POST /v1/identity-stores/{identity_store_id}/is-member-in-groups |
IdentityCenter:groupMembership:isMembershipInGroup |
organizations:delegatedAdministrators:list |
资源类型(Resource)
资源类型(Resource)表示SCP所作用的资源。如表3中的某些操作指定了可以在该操作指定的资源类型,则必须在具有该操作的策略语句中指定该资源的URN,策略仅作用于此资源;如未指定,Resource默认为“*”,则策略将应用到所有资源。您也可以在策略中设置条件,从而指定资源类型。
IAM身份中心定义了以下可以在策略的Resource元素中使用的资源类型。