AWS Identity and Access Management
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

创建您的第一个 IAM 委派用户和组

要支持您的 AWS 账户中的多个用户,您必须委派权限以允许其他人仅执行您要允许的操作。为此,请创建一个 IAM 组(其中具有这些用户所需的权限),然后在创建必要的组时将 IAM 用户添加到这些组。您可以使用此过程为您的整个 AWS 账户设置组、用户和权限。

此解决方案最适合中小型组织,其中 AWS 管理员可以手动管理用户和组。对于大型组织,您可以使用自定义 IAM 角色联合身份验证单一登录

创建委派的 IAM 用户和组(控制台)

您可以使用 AWS 管理控制台创建具有委派权限的 IAM 组,然后为其他人创建 IAM 用户并将此用户添加到该组。

为其他人创建委派组和用户(控制台)

  1. 登录 AWS 管理控制台 并通过以下网址打开 IAM 控制台 https://console.amazonaws.cn/iam/

  2. 在左侧的导航窗格中,选择策略

    如果这是您首次选择 Policies,则会显示 Welcome to Managed Policies 页面。选择 Get Started

  3. 选择 Create policy

  4. 选择 JSON 选项卡,然后在窗口右侧,选择 Import managed policies (导入托管策略)

  5. Import managed policies (导入托管策略) 窗口中,键入 power 以缩小策略列表。然后,选择 PowerUserAccess AWS 托管策略旁边的按钮。

  6. 选择 Import

    导入策略将添加到您的 JSON 策略中。

  7. 选择查看策略

  8. Review (审核) 页面上,为 Name (名称) 键入 PowerUserExampleCorp。对于 Description (描述),键入 Allows full access to all services except those for user management。然后,选择创建策略以保存您的工作。

  9. 在导航窗格中,选择 Groups (组),然后选择 Create New Group (创建新组)

  10. Group Name (组名称) 框中,键入 PowerUsers

  11. 在策略列表中,选中 PowerUserExampleCorp 旁边的复选框。然后选择 Next Step

  12. 选择 Create Group

  13. 在导航窗格中,选择用户,然后选择添加用户

  14. 对于 User name,键入 mary.major@examplecorp.com

  15. 选择 Add another user (添加其他用户) 并键入 diego.ramirez@examplecorp.com 作为第二个用户。

  16. 选中 AWS 管理控制台 access (AWS 管理控制台访问) 旁边的复选框,然后选择 Autogenerated password (自动生成的密码)。默认情况下,AWS 将强制新用户在首次登录时创建新密码。清除 User must create a new password at next sign-in (用户必须在下次登录时创建新密码) 旁边的复选框以允许新用户在登录后重置其密码。

  17. 选择 Next: Permissions (下一步: 权限)

  18. Set permissions (设置权限) 页面上,选择 Add user to group (将用户添加到组) 并选中 PowerUsers 旁边的复选框。

  19. 选择下一步: 标签

  20. (可选)通过以键值对的形式附加标签来向用户添加元数据。有关在 IAM 中使用标签的更多信息,请参阅 标记 IAM 用户和角色

  21. 选择 Next: Review 以查看要添加到新用户的组成员资格的列表。如果您准备好继续,请选择 Create users (创建用户)

  22. 下载或复制新用户的密码并安全地将其提供给用户。单独为您的用户提供指向您的 IAM 用户控制台页面的链接以及您刚刚创建的用户名。

减少组权限

PowerUser 组的成员可以完全访问除提供用户管理操作的少数服务之外的所有服务(如 IAM 和 组织)。经过预定义的不活动时段(如 90 天)后,您可以查看组成员已访问的服务。然后,您可以减少 PowerUserExampleCorp 策略的权限以仅包含您的团队所需的服务。

有关上次访问的服务相关数据的更多信息,请参阅使用上次访问的服务数据优化权限

查看上次访问的服务相关数据

等待预定义的不活动时段(如 90 天)经过。然后,您可以查看您的用户或组上次访问的服务相关数据,以了解您的用户上次尝试访问您的 PowerUserExampleCorp 策略允许的服务的时间。

  1. 登录 AWS 管理控制台 并通过以下网址打开 IAM 控制台 https://console.amazonaws.cn/iam/

  2. 在导航窗格中,选择 Groups (组),然后选择 PowerUser 组名称。

  3. 在组摘要页面上,选择 Access Advisor (访问顾问) 选项卡。

    上次访问的服务相关数据表显示组成员上次尝试访问每个服务的时间(按时间顺序,从最近的尝试开始)。该表仅包含策略允许的服务。在此情况下,PowerUserExampleCorp 策略允许访问所有 AWS 服务。

  4. 查看此表并生成您的组成员最近访问过的服务的列表。

    例如,假设在上个月内,您的团队仅访问了 Amazon EC2 和 Amazon S3 服务。但 6 个月前,他们访问了 Amazon EC2 Auto Scaling 和 IAM。您知道他们正在调查 EC2 Auto Scaling,但您认定不需要这样做。您还知道他们使用 IAM 创建角色以允许 Amazon EC2 访问 S3 存储桶中的数据。因此,您决定减少用户的权限,以仅允许访问 Amazon EC2 和 Amazon S3 服务。

编辑策略以减少权限

在查看上次访问的服务相关数据后,可以编辑策略以仅允许访问您的用户所需的服务。

使用数据以仅允许访问必要的服务

  1. 在导航窗格中,选择 Policies (策略),然后选择 PowerUserExampleCorp 策略名称。

  2. 选择 Edit policy (编辑策略),然后选择 JSON 选项卡。

  3. 编辑 JSON 策略文档以仅允许所需的服务。

    例如,编辑第一个包括 Allow 效果和 NotAction 元素的语句以仅允许 Amazon EC2 和 Amazon S3 操作。为此,请将其替换为具有 FullAccessToSomeServices ID 的语句。您的新策略将类似于以下示例策略。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccessToSomeServices", "Effect": "Allow", "Action": [ "ec2:*", "s3:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:DeleteServiceLinkedRole", "iam:ListRoles", "organizations:DescribeOrganization" ], "Resource": "*" } ] }
  4. 要进一步减少策略对特定操作和资源的权限,请在 CloudTrail Event history (事件历史记录) 中查看您的事件。在此处,您可以查看有关用户已访问的特定操作和资源的详细信息。有关更多信息,请参阅 AWS CloudTrail 用户指南 中的在 CloudTrail 控制台中查看 CloudTrail 事件