更新时间:2024-03-15 GMT+08:00

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身份中心的相关操作。

表1 IAM身份中心支持的授权项

授权项

描述

访问级别

资源类型(*为必须)

条件键

IdentityCenter:permissionSet:create

授予创建权限集的权限。

write

instance *

-

-

  • g:RequestTag/<tag-key>
  • g:TagKeys

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需要依赖的授权项。

表2 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

  • iam:policies:get
  • organizations:delegatedAdministrators:list

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元素中使用的资源类型。

表3 IAM身份中心支持的资源类型

资源类型

URN

instance

IdentityCenter::<management-account-id>:instance:<instance-id>

account

IdentityCenter::<management-account-id>:account:<account-id>

permissionSet

IdentityCenter::<management-account-id>:permissionSet:<instance-id>/<permission-set-id>

条件(Condition)

IAM身份中心服务不支持在SCP中的条件键中配置服务级的条件键。

IAM身份中心可以使用适用于所有服务的全局条件键,请参考全局条件键