AWS Control Tower 中的身份和访问管理 - AWS Control Tower

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

AWS Control Tower 中的身份和访问管理

要在着陆区域中执行任何操作,例如在 Account Factory 中配置账户或在 AWS Control Tower 控制台中创建新的组织单位 AWS Identity and Access Management (OU),请使用 (IAM) 或 AWS IAM Identity Center 要求您验证自己是经批准的 AWS 用户。例如,如果您使用的是 AWS Control Tower 控制台,则可以通过提供管理员提供的 AWS 证书来验证您的身份。

在您对身份进行身份验证后,IAM 会 AWS 使用一组针对特定操作和资源的定义权限来控制您的访问权限。如果您是账户管理员,则可以使用 IAM 来控制其他 IAM 用户对与您的账户关联的资源的访问权限。

身份验证

您可以访问 AWS 以下任何类型的身份:

  • AWS 账户 root 用户 — 首次创建 AWS 账户时,首先要有一个可以完全访问账户中所有 AWS 服务和资源的身份。此身份称为 AWS 账户 root 用户。当使用创建账户所用的电子邮件地址和密码登录时,您可以获得此身份。强烈建议您不使用根用户执行日常任务,即使是管理任务。相反,请遵循最佳实践,即仅使用根用户来创建您的第一个 IAM Identity Center 用户(推荐)或 IAM 用户(在大多数用例中不是最佳实践)。然后请妥善保存根用户凭证,仅用它们执行少数账户和服务管理任务。有关更多信息,请参阅 何时以 root 用户身份登录

  • IAM 用户 — I AM 用户是您的 AWS 账户中具有特定自定义权限的身份。您可以使用 IAM 用户证书登录安全 AWS 网页,例如 AWS 管理控制台、 AWS 讨论论坛或 Su AWS pport Center。 AWS 最佳实践建议您创建 IAM Identity Center 用户而不是 IAM 用户,因为当您创建具有长期证书的 IAM 用户时,安全风险更大。

    如果您必须为特定目的创建 IAM 用户,那么除了登录凭证之外,您还可以为每个 IAM 用户生成访问密钥。在以编程方式调用 AWS 服务时,您可以使用这些密钥,无论是通过多个 SDK 中的一个还是使用 AWS 命令行界面 (CLI)。SDK 和 CLI 工具使用访问密钥对您的请求进行加密签名。如果您不使用 AWS 工具,则必须自己签署请求。AWS Control Tower 支持签名版本 4,这是一种用于对入站 API 请求进行身份验证的协议。有关对请求进行身份验证的更多信息,请参阅《 AWS 一般参考》中的 “签名版本 4 签名流程”。

  • IAM 角色IAM 角色是可在账户中创建的一种具有特定权限的 IAM 身份。IAM 角色与 IAM 用户类似,因为它是一个 AWS 身份,它具有权限策略,用于确定该身份可以做什么和不能做什么 AWS。但是,角色旨在让需要它的任何人代入,而不是唯一地与某个人员关联。此外,角色没有关联的标准长期凭证(如密码或访问密钥)。相反,当您代入角色时,它会为您提供角色会话的临时安全凭证。具有临时凭证的 IAM 角色在以下情况下很有用:

    • 联合用户访问权限 — 您可以使用来自 AWS Directory Service企业用户目录或 Web 身份提供商的现有身份,而不是创建 IAM 用户。这些用户被称为联合用户。 AWS 当通过身份提供者请求访问权限时,将角色分配给联合用户。有关联合用户的更多信息,请参阅《IAM 用户指南》中的联合用户和角色

    • AWS 服务访问权限 — 服务角色是一个 IAM 角色,由服务代为代表您在账户中执行操作。在设置某些 AWS 服务环境时,必须为服务定义一个要扮演的角色。此服务角色必须包含服务访问其所需 AWS 资源所需的所有权限。服务角色因服务而异,但只要您满足服务记录在案的要求,许多服务都允许您选择权限。服务角色只在您的账户内提供访问权限,不能用于为访问其它账户中的服务授权。您可以从 IAM 中创建、修改和删除服务角色。例如,您可以创建一个角色以允许 Amazon Redshift 代表您访问 Amazon S3 存储桶,然后将该存储桶中的数据加载到 Amazon Redshift 集群中。有关更多信息,请参阅 IAM 用户指南中的创建角色以向 AWS 服务委派权限

    • 在 A@@ mazon EC2 上运行的应用程序 — 您可以使用 IAM 角色管理在 Amazon EC2 实例上运行并发出 AWS CLI 或 AWS API 请求的应用程序的临时证书。这优先于在 Amazon EC2 实例中存储访问密钥。要向 Amazon EC2 实例分配 AWS 角色并使其可供其所有应用程序使用,您需要创建附加到该实例的实例配置文件。实例配置文件包含角色,并使 Amazon EC2 实例上运行的程序能够获得临时凭证。有关更多信息,请参阅 IAM 用户指南中的 使用 IAM 角色为 Amazon EC2 实例上运行的应用程序授予权限

  • IAM Identit y Center 用户对 IAM 身份中心用户门户的身份验证由您连接到 IAM 身份中心的目录控制。但是,对用户门户中可供最终用户使用的 AWS 账户的授权由两个因素决定:

    • 在 AWS IAM Identity Center 控制台中,谁被分配了对这些 AWS 账户的访问权限。有关更多信息,请参阅《AWS IAM Identity Center 用户指南》中的单点登录访问权限

    • 在 AWS IAM Identity Center 控制台中向最终用户授予了什么级别的权限,以允许他们对这些 AWS 账户进行适当的访问权限。有关更多信息,请参阅《AWS IAM Identity Center 用户指南》中的权限集

访问控制

要创建、更新、删除或列出 AWS Control Tower AWS 资源或着陆区中的其他资源,您需要执行操作的权限,并且需要访问相应资源的权限。此外,要以编程方式执行该操作,您需要有效的访问密钥。

以下各节介绍如何管理 AWS Control Tower 的权限: