

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# AWS 账户 使用权限集进行管理
<a name="permissionsetsconcept"></a>

权限集是您创建和维护的模板，用于定义一个或多个 [IAM 策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)的集合。权限集简化了组织中用户和群组的 AWS 账户 访问权限分配。[例如，您可以创建一个*数据库管理员*权限集，其中包括用于管理 AWS RDS、DynamoDB 和 Aurora 服务的策略，并使用该权限集向数据库管理员授予对组织内 AWS 账户AWS 目标列表的访问权限。](https://aws.amazon.com/organizations/)

IAM Identity Center 使用权限集向一个或多个 AWS 账户 用户或群组分配访问权限。当您分配权限集时，IAM Identity Center 会在每个帐户中创建 IAM Identity Center 控制的相应 IAM 角色，并将权限集中指定的策略附加到这些角色。IAM Identity Center 使用 IAM Identity Center 用户门户或 AWS CLI 管理角色，并允许您定义的授权用户代入该角色。 在您修改权限集时，IAM Identity Center 会确保相应的 IAM 策略和角色也相应更新。

您可以将 [AWS 管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)、[客户管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)、[内联策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies)和[适用于工作职能的AWS 管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)添加到您的权限集中。您也可以指定 AWS 管理型策略或客户管理型策略作为[权限边界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)。

要创建权限集，请参阅[创建、管理和删除权限集](permissionsets.md)。

## 创建应用最低权限的权限集
<a name="get-started-create-permission-set-to-grant-least-privilege-permissions"></a>

要遵循应用最低权限的最佳实践，请在创建管理权限集之后，创建一个限制性更强的权限集并将其分配给一个或多个用户。在之前过程中创建的权限集将提供一个起点，让您评估为用户访问所需的资源分配多少访问权限。要切换到最低权限权限，您可以运行 IAM Access Analyzer 来监控使用 AWS 托管策略的委托人。了解他们使用的权限后，您可以编写自定义策略或生成仅包含团队所需权限的策略。

借助 IAM Identity Center，您可以为同一个用户分配多个权限集。您还应该为管理用户分配其他限制性更强的权限集。这样，他们就可以仅 AWS 账户 凭所需的权限访问您的，而不必总是使用他们的管理权限。

例如，如果您是一名开发人员，在 IAM Identity Center 中创建管理用户后，您可以创建一个授予 `PowerUserAccess` 权限的新权限集，然后将该权限集分配给您自己。不同于使用 `AdministratorAccess` 权限的管理权限集，`PowerUserAccess ` 权限集不允许管理 IAM 用户和组。当你登录 AWS 访问门户访问你的 AWS 账户时，你可以选择`PowerUserAccess`而不是在`AdministratorAccess`账户中执行开发任务。

请注意以下事项：
+ **要快速开始创建限制性更强的权限集，请使用预定义的权限集而不是自定义权限集。**

  使用使用预定义权限的[预定义权限](permissionsetpredefined.md)集，您可以从可用策略列表中选择单个 AWS 托管策略。每项策略都授予对 AWS 服务和资源的特定级别的访问权限或对常见工作职能的权限。有关每项策略的信息，请参阅[针对工作职能的AWS 管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)。
+ **您可以为权限集配置会话持续时间，以控制用户登录 AWS 账户的时间长度。**

  当用户联合到他们的管理控制台或命令行界面 (CLI) AWS 账户 并使用 AWS 管理控制台或 AWS 命令行界面 (AWS CLI) 时，IAM Identity Center 会使用权限集上的会话持续时间设置来控制会话的持续时间。默认情况下，“**会话持续时间**” 的值设置为一小时，该值决定了用户在退出会话 AWS 账户 之前 AWS 可以登录的时间长度。可以指定的最大值为 12 小时。有关更多信息，请参阅 [将会话持续时间设置为 AWS 账户](howtosessionduration.md)。
+ **您还可以配置 AWS 访问门户会话持续时间以控制员工用户登录门户的时间长度。**

  默认情况下，“**最大会话持续时间**” 的值为八小时，该值决定了员工用户在必须重新进行身份验证之前可以登录 AWS 访问门户的时间长度。可以将最大值指定为 90 天。有关更多信息，请参阅 [在 IAM Identity Center 中配置会话持续时间](configure-user-session.md)。
+ **登录 AWS 访问门户时，选择提供最低权限权限的角色。**

  您创建并分配给用户的每个权限集在 AWS 访问门户中显示为可用角色。当您以该用户身份登录门户时，请选择与可用于在帐户中执行任务的最严格的权限集相对应的角色，而不是 `AdministratorAccess`。
+ **您可以将其他用户添加到 IAM Identity Center，并为这些用户分配现有或新的权限集。**

  有关信息，请参阅[为用户或群组分配访问权限 AWS 账户](assignusers.md)。

**Topics**
+ [创建应用最低权限的权限集](#get-started-create-permission-set-to-grant-least-privilege-permissions)
+ [AWS 托管策略的预定义权限](permissionsetpredefined.md)
+ [托管策略和客户 AWS 托管策略的自定义权限](permissionsetcustom.md)
+ [创建、管理和删除权限集](permissionsets.md)
+ [配置权限集属性](permproperties.md)

# AWS 托管策略的预定义权限
<a name="permissionsetpredefined"></a>

您可以使用 AWS 托管策略创建预定义的权限集。

创建具有预定义权限的权限集时，可以从 AWS 托管策略列表中选择一个策略。在可用策略中，您可以从**常见权限策略**和**工作职能策略**中进行选择。

**常见权限策略**  
从 AWS 托管策略列表中进行选择，使您可以访问整个托管策略 AWS 账户。您可以添加以下策略之一：  
+ AdministratorAccess
+ PowerUserAccess
+ ReadOnlyAccess
+ ViewOnlyAccess

**工作职能策略**  
从 AWS 托管策略列表中进行选择，这些策略允许访问您中 AWS 账户 可能与组织内某项工作相关的资源。您可以添加以下策略之一：  
+ Billing
+ DataScientist
+ DatabaseAdministrator
+ NetworkAdministrator
+ SecurityAudit
+ SupportUser
+ SystemAdministrator

有关可用常见权限策略和工作职能策略的详细说明，请参阅 *AWS Identity and Access Management 用户指南*中的[适用于工作职能的AWS 管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)。

有关如何创建权限集的说明，请参阅[创建、管理和删除权限集](permissionsets.md)。

# 托管策略和客户 AWS 托管策略的自定义权限
<a name="permissionsetcustom"></a>

您可以创建具有**自定义权限的权限**集，将您在 AWS Identity and Access Management (IAM) 中拥有的任何托管策略和客户托管策略与内联策略相结合。 AWS 您还可以纳入权限边界，设置其他策略可授予权限集用户的最大可能权限。

有关如何创建权限集的说明，请参阅[创建、管理和删除权限集](permissionsets.md)。

**您可以附加到权限集的策略类型**

**Topics**
+ [内联策略](#permissionsetsinlineconcept)
+ [AWS 托管策略](#permissionsetsampconcept)
+ [客户托管策略](#permissionsetscmpconcept)
+ [权限边界](#permissionsetsboundaryconcept)

## 内联策略
<a name="permissionsetsinlineconcept"></a>

您可以将*内联策略*附加到权限集。内联策略是格式为 IAM policy 的文本块，您可以将其直接添加到权限集中。创建新权限集时，您可以粘贴策略，也可以使用 IAM Identity Center 控制台中的策略创建工具生成新策略。您还可以使用 [AWS 策略生成器](https://awspolicygen.s3.amazonaws.com/policygen.html)创建 IAM 策略。

当您使用内联策略部署权限集时，IAM Identity Center 会在您分配权限集 AWS 账户 的地方创建一个 IAM 策略。当您将权限集分配给帐户时，IAM Identity Center 会创建策略。然后，该策略将附加到您的用户担任 AWS 账户 的 IAM 角色。

当您创建内联策略并分配权限集时，IAM Identity Center 会 AWS 账户 为您配置您的策略。使用构建权限集时[客户托管策略](#permissionsetscmpconcept)，在分配权限集之前，必须 AWS 账户 自己创建策略。

## AWS 托管策略
<a name="permissionsetsampconcept"></a>

您可以将*AWS 托管策略*附加到您的权限集。 AWS 托管策略是用于 AWS 维护的 IAM 策略。相比之下，[客户托管策略](#permissionsetscmpconcept)是您在账户中创建和维护的 IAM 策略。 AWS 托管策略解决了您的常见的最低权限用例 AWS 账户。您可以将 AWS 托管策略分配为 IAM Identity Center 创建的角色的权限或[权限边界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)。

AWS 维护[工作职能的AWS 托管策略，这些策略可为您的 AWS 资源分配特定于作业](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)的访问权限。当您选择对权限集使用**预定义权限**时，可以添加一项工作职能策略。选择**自定义权限**时，可以添加多项工作职能策略。

您 AWS 账户 还包含大量针对特定策略 AWS 服务 和组合的 AWS 托管 IAM 策略 AWS 服务。创建具有**自定义权限的权限**集时，可以从许多其他 AWS 托管策略中进行选择，将其分配给您的权限集。

AWS 每个都填 AWS 账户 充 AWS 托管策略。要部署包含 AWS 托管策略的权限集，您无需先在中创建策略 AWS 账户。使用构建权限集时[客户托管策略](#permissionsetscmpconcept)，在分配权限集之前，必须 AWS 账户 自己创建策略。

有关 AWS 托管策略的更多信息，请参阅 IAM 用户指南中的[AWS 托管策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)。

## 客户托管策略
<a name="permissionsetscmpconcept"></a>

您可以将*客户管理型策略*附加到您的权限集。客户管理型策略是您在帐户中创建和维护的 IAM 策略。相比之下，您的账户中[AWS 托管策略](#permissionsetsampconcept)是否有 IAM 策略可以 AWS 维护。您可以将客户管理型策略指定为 IAM Identity Center 所创建角色的权限或[权限边界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)。

使用客户托管策略创建权限集时，必须在 IAM Identity Center 分配权限集的每个 AWS 账户 策略中创建具有相同名称和路径的 IAM 策略。如果要指定自定义路径，请确保在每个 AWS 账户中指定相同的路径。有关更多信息，请参阅《IAM 用户指南》中的[友好名称和路径](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names)。IAM Identity Center 将 IAM policy 附加到其在您的 AWS 账户中创建的 IAM 角色。最佳做法是在每个您分配权限集的帐户中对策略应用相同的权限。有关更多信息，请参阅 [在权限集中使用 IAM 策略](howtocmp.md)。

**注意**  
当客户管理型策略附加到权限集时，策略名称不区分大小写。

有关更多信息，请参阅 IAM 用户指南中的[客户管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)。

## 权限边界
<a name="permissionsetsboundaryconcept"></a>

您可以将*权限边界*附加到您的权限集。权限边界是一种 AWS 托管或客户托管的 IAM 策略，用于设置基于身份的策略可以向 IAM 委托人授予的最大权限。当您应用权限边界时，您的 [内联策略](#permissionsetsinlineconcept)、[客户托管策略](#permissionsetscmpconcept)、和 [AWS 托管策略](#permissionsetsampconcept) 不能授予任何超出您的权限边界所授予权限的权限。权限边界不授予任何权限，而是让 IAM 忽略边界之外的所有权限。

当您创建以客户管理型策略作为权限边界的权限集时，您必须在 IAM Identity Center 分配您的权限集的每个 AWS 账户 中创建一个名称相同的 IAM policy。IAM Identity Center 将 IAM policy 作为权限边界附加到它在您的 AWS 账户 中创建的 IAM 角色。

有关更多信息，请参阅 IAM 用户指南 中的 [IAM 实体的权限边界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)。

# 创建、管理和删除权限集
<a name="permissionsets"></a>

权限集定义用户和组对某一 AWS 账户帐户的访问级别。权限集存储在 IAM Identity Center 中，可以配置给一个或多个 AWS 账户。您可以为用户分配多个权限集。有关权限集以及如何在 IAM Identity Center 中使用权限集的更多信息，请参阅 [AWS 账户 使用权限集进行管理](permissionsetsconcept.md)。

**注意**  
您可以在 IAM Identity Center 控制台中按名称搜索和排序权限集。

创建权限集时，请记住以下注意事项：
+ **组织实例**

  要使用权限集，您将需要使用 IAM Identity Center 的组织实例。有关更多信息，请参阅 [IAM Identity Center 的组织和账户实例](identity-center-instances.md)。
+ **以预定义的权限集为起点** 

  使用使用预定义权限的[预定义权限](permissionsetpredefined.md)集，您可以从可用策略列表中选择单个 AWS 托管策略。每项策略都授予对 AWS 服务和资源的特定级别的访问权限或对常见工作职能的权限。有关每项策略的信息，请参阅[针对工作职能的AWS 管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)。收集使用情况数据后，您可以细化权限集，使其更具有限制性。
+ **将管理会话的持续时间限制在合理的工作时间段内** 

  当用户联合到他们 AWS 账户 并使用 AWS 管理控制台 或 AWS 命令行界面 (AWS CLI) 时，IAM Identity Center 会使用权限集上的会话持续时间设置来控制会话的持续时间。当用户会话达到会话持续时间时，他们将退出控制台，并被要求重新登录。作为最佳安全做法，我们建议您设置的会话持续时间长度不要超过执行角色所需的时间。默认情况下，**会话持续时间**的值为一个小时。可以指定的最大值为 12 小时。有关更多信息，请参阅 [将会话持续时间设置为 AWS 账户](howtosessionduration.md)。
+ **限制员工用户门户的会话持续时间** 

  员工用户使用门户会话来选择角色和访问应用程序。默认情况下，“**最大会话持续时间**” 的值为八小时，该值决定了员工用户在必须重新进行身份验证之前可以登录 AWS 访问门户的时间长度。可以将最大值指定为 90 天。有关更多信息，请参阅 [在 IAM Identity Center 中配置会话持续时间](configure-user-session.md)。
+ **使用提供最低权限的角色**

  您创建并分配给用户的每个权限集在 AWS 访问门户中显示为可用角色。当您以该用户身份登录门户时，请选择与可用于在帐户中执行任务的最严格的权限集相对应的角色，而不是 `AdministratorAccess`。在发送用户邀请之前，请测试您的权限集，验证其是否提供了必要的访问权限。

**注意**  
您也可以使用 [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_SSO.html) 创建和分配权限集，并将这些权限集分配给用户。

**Topics**
+ [创建权限集](howtocreatepermissionset.md)
+ [查看和更改权限集](howtoviewandchangepermissionset.md)
+ [委派权限集管理](permissionsetdelegation.md)
+ [在权限集中使用 IAM 策略](howtocmp.md)
+ [在 IAM Identity Center 中移除权限集](howtoremovepermissionset.md)
+ [在 IAM Identity Center 中删除权限集](howtodeletepermissionset.md)

# 创建权限集
<a name="howtocreatepermissionset"></a>

使用此过程创建使用单个 AWS 管理型策略的预定义权限集，或者创建使用多达 10 个 AWS 管理型策略或客户管理型策略和内联策略的自定义权限集。您可以在 IAM 的 [服务限额控制台](https://console.aws.amazon.com/servicequotas)中请求调整 10 个策略的最大数量。您可以在 IAM Identity Center 控制台中创建权限集。

**注意**  
要使用权限集，您将需要使用 IAM Identity Center 的组织实例。有关更多信息，请参阅 [IAM Identity Center 的组织和账户实例](identity-center-instances.md)。

**创建权限集**

1. 打开 [IAM Identity Center 控制台](https://console.aws.amazon.com/singlesignon)。

1. 在**多帐户权限**下，选择**权限集**。

1. 选择 **Create permission set (创建权限集合)**。

1. 在**选择权限集类型**页面的**权限集类型**下，选择权限集类型。

1. 根据权限集类型，选择一个或多个要用于权限集的策略：
   + **预定义的权限集**

     1. 在**预先定义的权限集的策略**下，从列表选择一项 IAM **工作职能策略**或**通用权限策略**，然后选择**下一步**。有关更多信息，请参阅 *AWS Identity and Access Management 用户指南* 中的 [工作职能的AWS 管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) 和 [AWS 管理型策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)。

     1. 转至步骤 6，完成**指定权限集详细信息**页面。
   + **自定义权限集**

     1. 选择**下一步**。

     1. 在**指定策略和权限边界**页面上，选择要应用于新权限集的 IAM 策略类型。默认情况下，您可以将多达 10 个 **AWS 管理型策略**和**客户管理型策略**的任意组合添加到您的权限集中。此限额由 IAM 设置。要提高该限额，请在您要分配权限集的每个 AWS 账户 的服务限额控制台中请求增加 IAM 限额*附加到 IAM 角色的管理型策略*。
        + 扩展**AWS 托管策略**以添加来自 IAM 的 AWS 构建和维护策略。有关更多信息，请参阅 [AWS 托管策略](permissionsetcustom.md#permissionsetsampconcept)。

          1. 在权限集中搜索并选择要应用于用户的 **AWS 管理型策略**。

          1. 如果要添加其他类型的策略，请选择其容器并进行选择。选择了所有要应用的策略后，请选择**下一步**。转至步骤 6，完成**指定权限集详细信息**页面。
        + 扩展**客户管理型策略**以添加您构建和维护的 IAM 中的策略。有关更多信息，请参阅 [客户托管策略](permissionsetcustom.md#permissionsetscmpconcept)。

          1. 选择**附加策略**，然后输入要添加到权限集的策略的名称。在要向其分配权限集的每个帐户中，使用您输入的名称创建策略。最佳做法是为每个帐户中的策略分配相同的权限。

          1. 选择**附加更多**以添加其他策略。

          1. 如果要添加其他类型的策略，请选择其容器并进行选择。选择了所有要应用的策略后，请选择**下一步**。转至步骤 6，完成**指定权限集详细信息**页面。
        + 展开**内联策略**，添加自定义 JSON 格式的策略文本。内联策略与现有的 IAM 资源不对应。要创建内联策略，请在提供的表单中输入自定义策略语言。IAM Identity Center 会将策略添加到它在您的成员帐户中创建的 IAM 资源中。有关更多信息，请参阅 [内联策略](permissionsetcustom.md#permissionsetsinlineconcept)。

          1. 在交互式编辑器中将所需操作和资源添加到内联策略中。可以使用**添加新语句**添加其他语句。

          1. 如果要添加其他类型的策略，请选择其容器并进行选择。选择了所有要应用的策略后，请选择**下一步**。转至步骤 6，完成**指定权限集详细信息**页面。
        + 展开**权限边界**，将 AWS 托管或客户托管的 IAM 策略添加为权限集中的其他策略可以分配的最大权限。有关更多信息，请参阅 [权限边界](permissionsetcustom.md#permissionsetsboundaryconcept)。

          1. 选择**使用权限边界控制最大权限**。

          1. 选择 **AWS 管理型策略**来设置来自 IAM 的策略，该策略将 *AWS* 构建和维护作为您的权限边界。选择**客户管理型策略**，从 IAM 中设置一个由*您*构建和维护的策略作为权限边界。

          1. 如果要添加其他类型的策略，请选择其容器并进行选择。选择了所有要应用的策略后，请选择**下一步**。转至步骤 6，完成**指定权限集详细信息**页面。

1. 在**指定权限集详细信息** 页面中，请执行以下操作：

   1. 在**权限集名称** 下，键入一个名称以在 IAM Identity Center 中标识此权限集。您为此权限集指定的名称作为可用角色出现在 AWS 访问门户中。用户登录 AWS 访问门户，选择一个 AWS 账户，然后选择角色。
**注意**  
权限集名称在您的 IAM Identity Center 实例中必须唯一。

   1. （可选）您也可以键入描述。描述仅显示在 IAM Identity Center 控制台中，不显示在 AWS 访问门户中。

   1. （可选）指定**会话持续时间**的值。该值确定用户在控制台注销其会话之前可以登录的时间长度。有关更多信息，请参阅 [将会话持续时间设置为 AWS 账户](howtosessionduration.md)。

   1. （可选）指定**中继状态**的值。此值在联合身份验证过程中用于重定向帐户中的用户。有关更多信息，请参阅 [设置中继状态以便快速访问 AWS 管理控制台](howtopermrelaystate.md)。
**注意**  
中继状态 URL 必须在 AWS 管理控制台中。例如：  
**https://console.aws.amazon.com/ec2/**

   1. 展开**标签（可选）**，选择**添加标签**，然后为**密钥**和**值（可选）**指定值。

      有关标签的信息，请参阅 [为资源添加标签 AWS IAM Identity Center](tagging.md)。

   1. 选择**下一步**。

1. 在**查看并创建**页面上，查看您所做的选择，然后选择**创建**。

1. 默认情况下，当您创建权限集时，不会配置该权限集（用于任何权限集 AWS 账户）。要在中配置权限集 AWS 账户，您必须为账户中的用户和群组分配 IAM Identity Center 访问权限，然后将该权限集应用于这些用户和群组。有关更多信息，请参阅 [为用户或群组分配访问权限 AWS 账户](assignusers.md)。

# 查看和更改权限集
<a name="howtoviewandchangepermissionset"></a>

您可以使用权限集为用户授予 AWS 账户的访问权限。您可以使用 AWS IAM Identity Center 控制台查看和更改权限集。您可以在 IAM Identity Center 控制台中按名称搜索和排序权限集。有关权限集以及如何在 IAM Identity Center 中使用权限集的更多信息，请参阅 [AWS 账户 使用权限集进行管理](permissionsetsconcept.md)。

管理用户对应用程序的访问权限无需使用权限集。

**注意**  
要使用权限集，您将需要使用 IAM Identity Center 的组织实例。有关更多信息，请参阅 [IAM Identity Center 的组织和账户实例](identity-center-instances.md)。

## 查看权限集分配
<a name="howtoviewpermissionset"></a>

按照此过程在 AWS IAM Identity Center 控制台中查看已应用的权限集。

------
#### [ All AWS 账户 where a permission set is provisioned ]

要查看某个权限集的所有分配，请执行以下过程：

1. 登录 AWS 管理控制台 并打开 AWS IAM Identity Center 控制台，网址为[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)。

1. 在**多账户权限**下，选择**权限集**。

1. 在**权限集**页面选择要查看的权限集。

1. 进入所选权限集页面后，在**账户**选项卡下，您可以查看该权限集所应用的账户。您可以选择某个账户，查看该权限集在该账户中的配置方式。您可以[删除](howtoremovepermissionset.md)策略、编辑策略、将策略附加到权限集。

------
#### [ All permission sets for an AWS 账户 ]

要查看某个权限集的所有分配，请执行以下过程：

1. 登录 AWS 管理控制台 并打开 AWS IAM Identity Center 控制台，网址为[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)。

1. 在**多帐户权限**下，选择 **AWS 账户**。选择您要查看已配置权限集的账户。

1. 进入选定 AWS 账户 页面后，在 “**权限集**” 选项卡下，您可以查看分配给选定权限的不同权限集 AWS 账户。您可以点击权限集的超链接，了解该权限集的详细信息。

------
#### [ All applied permission sets to users and groups ]

要查看分配给用户或组的所有权限集，请执行以下过程：

1. 登录 AWS 管理控制台 并打开 AWS IAM Identity Center 控制台，网址为[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)。

1. 在**控制面板**下选择“用户”或“组”，查看 IAM Identity Center 用户或组。

   1. 进入**用户**页面后，选择您要查看其已应用权限集的用户。接下来，选择 **AWS 账户** 选项卡，然后选择 **AWS 账户访问**区域下的 AWS 账户 。您将能够看到所选用户的已应用权限集。 AWS 账户 

   1. 进入**组**页面后，选择您要查看其已应用权限集的组。接下来，选择 **AWS 账户**选项卡，然后选择 **AWS 账户 访问**区域下的 AWS 账户 。您将能够看到所选群组所应用 AWS 账户 的权限集。

------

## 更改权限集
<a name="howtochangepermissionset"></a>

按照此过程通过 IAM Identity Center 控制台更改[权限集](permissionsetsconcept.md)。您可以向用户或组添加或移除权限集。

1. 登录 AWS 管理控制台 并打开 AWS IAM Identity Center 控制台，网址为[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)。

1. 在**多帐户权限**下，选择 ** AWS 账户**。

1. 在 **AWS 账户** 页面上，将显示您的组织的树视图列表。选择要更改权限集的 AWS 账户 的名称。

1. 在 AWS 账户**概述**页面上，从**分配的用户和组**下选择要更改的权限集的用户名或组名。然后选择**更改权限集**。

1. 对权限集进行所需更改，然后选择**保存更改**。

1. 导航至**权限集**选项卡，选择最近更改的权限集，然后选择**更新**。

1. 在**更新权限**页面选择**更新**。

# 委派权限集管理
<a name="permissionsetdelegation"></a>

IAM Identity Center 允许您通过创建引用 [IAM 身份中心[资源的亚马逊资源名称 (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) 的 IAM 策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)来委托账户中的权限集和分配的管理。例如，您可以创建策略，使不同的管理员能够在指定帐户中为具有特定标签的权限集管理分配。

**注意**  
要使用权限集，您将需要使用 IAM Identity Center 的组织实例。有关更多信息，请参阅 [IAM Identity Center 的组织和账户实例](identity-center-instances.md)。

您可以使用下列任一方法创建这些类型的策略。
+ （推荐）在 IAM Identity Center 中创建[权限集](permissionsets.md)，每个权限集都有不同的策略，并将权限集分配给不同的用户或组。这使您能够管理使用您选择的 [IAM Identity Center 身份源](manage-your-identity-source.md)登录的用户的管理权限。
+ 在 IAM 中创建自定义策略，然后将其附加到您的管理员担任的 IAM 角色。有关角色的信息，请参阅 [IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)以获取为其分配的 IAM Identity Center 管理权限。

**重要**  
IAM 身份中心资源区 ARNs 分大小写。

以下内容显示了引用 IAM Identity Center 权限集和帐户资源类型的正确案例。


| 资源类型 | 进行筛选 | 上下文键 | 
| --- | --- | --- | 
| PermissionSet | arn:\$1\$1Partition\$1:sso:::permissionSet/\$1\$1InstanceId\$1/\$1\$1PermissionSetId\$1 | aws:ResourceTag/\$1\$1TagKey\$1 | 
| Account | arn:\$1\$1Partition\$1:sso:::account/\$1\$1AccountId\$1 | 不适用 | 

# 在权限集中使用 IAM 策略
<a name="howtocmp"></a>

在 [创建权限集](howtocreatepermissionset.md) 中，您学习了如何向权限集添加策略，包括客户管理型策略和权限边界。当您将客户管理型策略和权限添加到权限集时，IAM Identity Center 不会在任何 AWS 账户中创建策略。相反，您必须在要分配权限集的每个帐户中提前创建这些策略，并将它们与权限集的名称和路径规范相匹配。当您将权限集分配给组织 AWS 账户 中的时，IAM Identity Center 会创建一个 [AWS Identity and Access Management (IAM) 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)并将您[的 IAM 策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)附加到该角色。

**注意事项**
+ 要使用权限集，您将需要使用 IAM Identity Center 的组织实例。有关更多信息，请参阅 [IAM Identity Center 的组织和账户实例](identity-center-instances.md)。
+ 在使用 IAM policy 分配权限集之前，您必须准备好您的成员帐户。成员账户中的 IAM 策略名称必须与管理账户中的策略名称相符。如果您的成员帐户中不存在权限集，IAM Identity Center 将无法分配权限集。
**注意**  
当客户管理型策略附加到权限集时，策略名称不区分大小写。
+ 策略授予的权限不必在账户之间完全匹配。

# 将 IAM 策略分配给权限集


1. 在您要分配权限集的每个 AWS 账户 位置中创建一个 IAM 策略。

1. 向 IAM policy 分配权限。您可以在不同的帐户中分配不同的权限。为了获得一致的体验，请在每个策略中配置和维护相同的权限。您可以使用自动化资源，例如 AWS CloudFormation StackSets 在每个成员账户中创建具有相同名称和权限的 IAM 策略的副本。有关的更多信息 CloudFormation StackSets，请参阅《*AWS CloudFormation 用户指南》 AWS CloudFormation StackSets*中的 “[使用](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html)”。

1. 在您的管理帐户中创建权限集，并在**客户管理型策略**或**权限边界**下添加您的 IAM policy。有关如何创建权限集的更多详细信息，请参阅 [创建权限集](howtocreatepermissionset.md)。

1. 添加您准备的所有内联策略、 AWS 管理型策略或其他 IAM policy。

1. 创建并分配您的权限集。

# 在 IAM Identity Center 中移除权限集
<a name="howtoremovepermissionset"></a>

您可以在 IAM Identity Center 控制台中从 IAM Identity Center 用户和组移除权限集。您也可以从 AWS 账户移除权限集。有关权限集以及如何在 IAM Identity Center 中使用权限集的更多信息，请参阅 [AWS 账户 使用权限集进行管理](permissionsetsconcept.md)。

**注意**  
要使用权限集，您将需要使用 IAM Identity Center 的组织实例。有关更多信息，请参阅 [IAM Identity Center 的组织和账户实例](identity-center-instances.md)。

------
#### [ Remove permission set from a user ]

**从用户移除权限集**

使用此过程通过 IAM Identity Center 控制台从用户移除权限集。

1. 登录 AWS 管理控制台 并打开 AWS IAM Identity Center 控制台，网址为[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)。

1. 在 **IAM Identity Center** 下，选择**用户**。

1. 选择您要移除其权限集的用户名。

1. 在用户详情页面，选择 **AWS 账户**选项卡。在 **AWS 账户 访问**下，选择您的 AWS 账户。

1. 右侧面板将显示所选用户的已应用权限。选择您要移除的权限集。在**账户访问详情**下，选择**移除**。

1. 系统将弹出对话框，询问您是否要移除该权限集。选择**移除**。  
![\[AWS 账户 IAM 身份中心控制台中的 IAM 身份中心用户的选项卡。\]](http://docs.aws.amazon.com/zh_cn/singlesignon/latest/userguide/images/remove-permission-set-tutorial.png)

------
#### [ Remove permission set from a group ]

**从组移除权限集**

使用此过程通过 IAM Identity Center 控制台从组移除权限集。

1. 登录 AWS 管理控制台 并打开 AWS IAM Identity Center 控制台，网址为[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)。

1. 在**多账户权限**下，选择 **AWS 账户**。选择指向您管理账户的链接。  
![\[AWS 账户 IAM 身份中心控制台中的选项卡。\]](http://docs.aws.amazon.com/zh_cn/singlesignon/latest/userguide/images/sso-aws-accounts-tab.png)

1. 在**已分配用户和组**选项卡下，选择您要移除其权限集的组，然后选择**修改权限集**。

1. 在**更改权限集**页面上，清除您要移除的权限集，然后选择**保存更改**。

------
#### [ Remove permission set from an AWS 账户 ]

使用此过程通过 IAM Identity Center 控制台从 AWS 账户 移除权限集。

1. 登录 AWS 管理控制台 并打开 AWS IAM Identity Center 控制台，网址为[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)。

1. 在**多账户权限**下，选择 **AWS 账户**。选择要 AWS 账户 从中移除权限集的名称。

1. 在 AWS 账户的**概述**页面上，选择**权限集**选项卡。选择您要移除的权限集。然后选择**移除**。

1. 在**移除权限集**对话框中，确认选择了正确的权限集，输入 **Delete** 以确认移除，然后选择**移除访问权限**。

------

# 在 IAM Identity Center 中删除权限集
<a name="howtodeletepermissionset"></a>

在从 IAM Identity Center 删除权限集之前，您应将其从使用该权限集的所有 AWS 账户 中[移除](howtoremovepermissionset.md)。要查看现有用户和组的访问权限，请参阅[查看和更改权限集](howtoviewandchangepermissionset.md)。

**注意事项**
+ 要使用权限集，您将需要使用 IAM Identity Center 的组织实例。有关更多信息，请参阅 [IAM Identity Center 的组织和账户实例](identity-center-instances.md)。
+ 如果要撤销活跃权限集会话，请参阅[查看和结束员工用户的活跃会话](end-active-sessions.md)。
+ 在删除用户或组之前，应先从这些用户或组中移除权限集和应用程序分配。否则，IAM Identity Center 中将会存在未分配且未使用的权限集和应用程序。

使用以下步骤删除一个或多个权限集，这样组织 AWS 账户 中的任何人就无法再使用这些权限集。

**重要**  
已分配此权限集的所有用户和群组，无论使用 AWS 账户 的是什么，都将无法再登录。要查看现有用户和组的访问权限，请参阅[查看和更改权限集](howtoviewandchangepermissionset.md)。

**从中删除权限集 AWS 账户**

1. 打开 [IAM Identity Center 控制台](https://console.aws.amazon.com/singlesignon)。

1. 在**多帐户权限**下，选择**权限集**。

1. 选择要删除的权限集，然后选择 **Delete (删除)**。

1. 在**删除权限集**对话框中，输入权限集的名称以确认删除，然后选择**删除**。该名称区分大小写。

# 配置权限集属性
<a name="permproperties"></a>

在 IAM Identity Center 中，管理员可以通过完成以下配置和管理任务来控制用户访问权限及会话持续时间。


| Task | 了解详情 | 
| --- | --- | 
|  管理员可以设置通过 IAM Identity Center 访问 AWS 资源时用户会话的最大持续时间。 | [将会话持续时间设置为 AWS 账户](howtosessionduration.md) | 
| 管理员可以自定义用户在成功通过 IAM Identity Center 进行身份验证后看到的登录页面。 | [设置中继状态以便快速访问 AWS 管理控制台](howtopermrelaystate.md) | 
| 确保用户在权限被撤销后无法再访问 AWS 资源。 | [使用“拒绝策略”撤销活跃用户权限](prereqs-revoking-user-permissions.md) | 

# 将会话持续时间设置为 AWS 账户
<a name="howtosessionduration"></a>

对于每个 [权限集](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)，您可以指定会话持续时间，以控制用户可登录 AWS 账户帐户的时间长度。当指定的持续时间过后，用户 AWS 将退出会话。

创建新权限集时，会话持续时间默认设置为 1 小时（以秒为单位）。最短会话持续时间为 1 小时，最多可设置为 12 小时。IAM Identity Center 会在每个分配的帐户中为每个权限集自动创建 IAM 角色，并将这些角色配置为最长会话持续时间为 12 小时。

当用户联合访问其 AWS 账户 控制台或使用 AWS Command Line Interface (AWS CLI) 时，IAM Identity Center 会使用权限集上的会话持续时间设置来控制会话的持续时间。默认情况下，IAM Identity Center 为权限集生成的 IAM 角色只能由 IAM Identity Center 用户担任，这可确保强制实施 IAM Identity Center 权限集中指定的会话持续时间。

**重要**  
作为最佳安全做法，我们建议您设置的会话持续时间长度不要超过执行角色所需的时间。

创建权限集后，您可以对其进行更新以应用新的会话持续时间。使用以下过程修改该权限集的会话持续时间长度。

**设置会话持续时间**

1. 打开 [IAM Identity Center 控制台](https://console.aws.amazon.com/singlesignon)。

1. 在**多帐户权限**下，选择**权限集**。

1. 选择要为其更改会话持续时间的权限集的名称。

1. 在权限集的详细信息页面上，在**常规设置** 部分标题的右侧，选择**编辑**。

1. 在**编辑常规权限集设置**页面上，为**会话持续时间**选择一个新值。

1. 如果以任何方式配置了权限集 AWS 账户，则帐户名称将显示在下面，**AWS 账户 以便自动重新置**备。权限集的会话持续时间值更新后，将重新配置所有使用 AWS 账户 该权限集的用户。这意味着此设置的新值将应用于所有使用 AWS 账户 该权限集的用户。

1. 选择**保存更改**。

1. **AWS 账户** 页面顶部会显示一条通知。
   + 如果在一个或多个 AWS 账户中配置了权限集，则通知会确认 AWS 账户 已成功重新配置，并且更新的权限集已应用于帐户。
   + 如果未在中配置权限集 AWS 账户，则通知将确认权限集的设置已更新。

# 设置中继状态以便快速访问 AWS 管理控制台
<a name="howtopermrelaystate"></a>

默认情况下，当用户登录 AWS 访问门户，选择账户，然后选择根据分配的权限集 AWS 创建的角色时，IAM Identity Center 会将用户的浏览器重定向到。 AWS 管理控制台您可以通过将中继状态设置为不同的控制台 URL 来更改此行为。

通过设置中继状态，您能够为用户提供对最适合其角色的控制台的快速访问。例如，您可以将中继状态设置为 Amazon EC2 控制台 URL (**https://console.aws.amazon.com/ec2/**) ，以便在用户选择 Amazon EC2 管理员角色时将用户重定向到该控制台。在重定向到默认 URL 或中继状态 URL 的过程中，IAM Identity Center 会将用户的浏览器路由到用户上次 AWS 区域 使用的控制台终端节点。例如，如果用户结束了欧洲地区（斯德哥尔摩）(eu-north-1) 的最后一个控制台会话，则该用户将被重定向到该区域中的 Amazon EC2 控制台。

![\[在 AWS 管理控制台中设置中继状态的工作流程图。\]](http://docs.aws.amazon.com/zh_cn/singlesignon/latest/userguide/images/permission_sets_relay_state_newest.png)


要配置 IAM Identity Center 以将用户重定向到特定 AWS 区域中的控制台，将区域规范包含在 URL 中。例如，要将用户重定向到美国东部（俄亥俄州）(us-east-2) 中的 Amazon EC2 控制台，指定该区域中 Amazon EC2 控制台的 URL (**https://us-east-2.console.aws.amazon.com/ec2/**)。如果您在美国西部（俄勒冈州）(us-west-2) 启用了 IAM Identity Center，并且您希望将用户定向到该区域，指定 **https://us-west-2.console.aws.amazon.com**。

## 配置中继状态
<a name="configure-relay-state"></a>

使用以下过程为权限集配置中继状态 URL。

1. 打开 [IAM Identity Center 控制台](https://console.aws.amazon.com/singlesignon)。

1. 在**多帐户权限**下，选择**权限集**。

1. 选择要为其设置新中继状态 URL 的权限集的名称。

1. 在权限集的详细信息页面上，在**常规设置** 部分标题的右侧，选择**编辑**。

1. 在 **“编辑常规权限集设置”** 页面的 “**中继状态**” 下，键入任何 AWS 服务的控制台 URL。例如：

    **https://console.aws.amazon.com/ec2/**
**注意**  
中继状态 URL 必须在 AWS 管理控制台中。

1. 如果以任何方式配置了权限集 AWS 账户，则帐户名称将显示在下面，**AWS 账户 以便自动重新置**备。权限集的中继状态 URL 更新后，将重新配置所有使用 AWS 账户 该权限集的用户。这意味着此设置的新值将应用于所有使用 AWS 账户 该权限集的用户。

1. 选择**保存更改**。

1. 在 **AWS 组织**页面的顶部会显示一条通知。
   + 如果在一个或多个 AWS 账户中配置了权限集，则通知会确认 AWS 账户 已成功重新配置，并且更新的权限集已应用于帐户。
   + 如果权限集未在 AWS 账户中配置，则通知会确认权限集的设置已更新。

**注意**  
您可以使用 AWS API、 AWS SDK 或 AWS Command Line Interface(AWS CLI) 自动执行此过程。有关更多信息，请参阅:   
[IAM Identity Center API 参考](https://docs.aws.amazon.com/singlesignon/latest/APIReference/welcome.html)中的 `CreatePermissionSet` 或 `UpdatePermissionSet` 操作 
*AWS CLI 命令参考*的 [https://docs.aws.amazon.com/cli/latest/reference/sso-admin/index.html#cli-aws-sso-admin](https://docs.aws.amazon.com/cli/latest/reference/sso-admin/index.html#cli-aws-sso-admin) 部分中的 `create-permission-set` 或 `update-permission-set` 命令。

# 使用“拒绝策略”撤销活跃用户权限
<a name="prereqs-revoking-user-permissions"></a>

当 IAM Identity Center 用户正在使用权限集 AWS 账户 时，您可能需要撤销该用户的访问权限。事先为未指定用户实施“拒绝策略”，可以取消其使用其活跃 IAM 角色会话的权限；然后在需要时可以更新“拒绝策略”，指定要阻止其访问权限的用户。本主题旨在介绍如何创建“拒绝策略”以及部署策略的注意事项。

## 准备撤销由权限集创建的活跃 IAM 角色会话
<a name="prepare-to-revoke-session"></a>

您可以通过使用“服务控制策略”对特定用户应用“全部拒绝”策略，以此阻止用户使用他们正活跃使用的 IAM 角色执行操作。您还可以在自己更改密码之前阻止用户使用任何权限集，这样可以移除活跃滥用被盗凭证的恶意行为者。如需大范围拒绝访问并阻止用户重新进入权限集或访问其他权限集，也可移除所有用户访问权限，停止活跃的 AWS 访问门户会话，并禁用用户登录。请参阅[查看和结束员工用户的活跃会话](end-active-sessions.md)，了解如何将“拒绝策略”与其他操作结合使用，从而扩大访问权限的撤销范围。

### 拒绝策略
<a name="deny-policy"></a>

您可以使用“拒绝策略”，其条件与 IAM Identity Center 身份存储中的用户 `UserID` 匹配，以此阻止用户使用他们正活跃使用的 IAM 角色执行进一步的操作。使用此策略可以避免对部署“拒绝策略”时可能使用相同权限集的其他用户造成影响。此策略将占位符用户 ID *`Add user ID here`* 用于您将通过要撤销访问权限的用户 ID 进行更新的 `"identitystore:userId"`。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "*"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "identitystore:userId": "Add user ID here"  
                }
            }
        }
    ]
}
```

------

虽然可以使用其他条件键（例如 `“aws:userId”`），但 `“identitystore:userId”` 是确定的，因为这是与某个人员有关的全局唯一值。在条件中使用 `“aws:userId”` 可能会受到从身份源同步用户属性的方式影响，并且如果用户的用户名或电子邮件地址发生变化，则可能会发生变化。

在 IAM Identity Center 控制台中，您可以通过导航到**用户**、按用户名搜索用户、展开**一般信息**部分并复制用户 ID 来查找用户 `identitystore:userId`。在搜索用户 ID 时，停止用户的 AWS 访问门户会话并禁用他们在同一部分的登录访问权限也很方便。您可以通过查询身份存储来获取用户的用户 ID，从而自动创建拒绝策略 APIs。

### 部署“拒绝策略”
<a name="deploy-deny-policy"></a>

 您可以使用无效的占位符用户 ID（例如）`Add user ID here`，使用附加到 AWS 账户 用户可能有权访问的服务控制策略 (SCP) 提前部署拒绝策略。推荐使用此方法，因为操作简单、见效快。使用“拒绝策略”撤销用户的访问权限时，您需要编辑该策略，将占位符用户 ID 替换为要撤销其访问权限之人的用户 ID。这可以防止用户使用您附加 SCP 的各个账户中设置的任何权限集执行任何操作。即使用户使用活跃的 AWS 访问门户会话导航到不同账户并代入不同角色，也无法进行操作。当 SCP 完全屏蔽了用户的访问权限后，您可以根据需要禁用他们的登录、撤消分配和停止 AWS 访问门户会话的功能。

除了使用之外 SCPs，您还可以将 “拒绝” 策略包含在权限集的内联策略和用户可以访问的权限集使用的客户托管策略中。

如果必须撤销多人的访问权限，则可在条件块中使用值列表，例如：

```
            "Condition": {
                    "StringEquals": {
                        "identitystore:userId": [" user1 userId", "user2 userId"...]
                        }
        }
```

**重要**  
无论采用何种方法，均须采取任何其他纠正措施，并在策略中保留用户的用户 ID 至少 12 小时。之后，用户代入的任何角色都将过期，然后您可以将其用户 ID 从“拒绝策略”中移除。