获取 AWS CLI 或 AWS 软件开发工具包的 IAM Identity Center 用户证书 - AWS IAM Identity Center

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

获取 AWS CLI 或 AWS 软件开发工具包的 IAM Identity Center 用户证书

您可以使用 AWS Command Line Interface 或带有 IAM Identity Center 用户证书的 AWS 软件开发套件 (SDK),以编程方式访问 AWS 服务。本主题介绍如何在 IAM Identity Center 中获取用户的临时凭证。

AWS 访问门户为 IAM Identity Center 用户提供了对其应用程序 AWS 账户 和云应用程序的单点登录访问权限。作为 IAM Identity Center 用户登录 AWS 访问门户后,您可以获得临时证书。然后,您可以使用 AWS CLI 或 AWS 软件开发工具包中的证书(也称为 IAM Identity Center 用户证书)来访问中的资源。 AWS 账户

如果您使用以编程方式访问 AWS 服务,则可以使用本主题中的过程来启动对服务的访问。 AWS CLI AWS CLI有关信息 AWS CLI,请参阅《AWS Command Line Interface 用户指南》

如果您使用 AWS 软件开发工具包以编程方式访问 AWS 服务,则按照本主题中的步骤还可以直接为软件开发工具包建立身份验证。 AWS 有关 AWS SDK 的信息,请参阅 AWS SDK 和工具参考指南

注意

IAM Identity Center 中的用户与 IAM 用户不同。IAM 用户将获得 AWS 资源的长期证书。IAM Identity Center 中的用户被授予临时凭证。我们建议您使用临时证书作为访问您的证书的最佳安全实践, AWS 账户 因为这些证书是在您每次登录时生成的。

先决条件

要获取 IAM Identity Center 用户的临时凭证,您需要以下内容:

  • IAM Identity Center 用户——您将以该用户身份登录 AWS 访问门户。您或您的管理员可能会创建此用户。有关如何启用 IAM Identity Center 和创建 IAM Identity Center 用户的信息,请参阅 IAM Identity Center 中的常见任务入门

  • 用户访问权限 AWS 账户— 要向 IAM Identity Center 用户授予检索其临时证书的权限,您或管理员必须将 IAM Identity Center 用户分配给权限集。权限集存储在 IAM Identity Center 中,定义 IAM Identity Center 用户对 AWS 账户的访问级别。如果您的管理员为您创建了 IAM Identity Center 用户,请要求他们为您添加此访问权限。有关更多信息,请参阅 将用户访问权限分配给 AWS 账户

  • AWS CLI 已安装-要使用临时证书,必须安装 AWS CLI。有关说明,请参阅 AWS CLI 用户指南中的安装或更新最新版本的 AWS CLI

注意事项

在完成为 IAM Identity Center 用户获取临时凭证的步骤之前,请记住以下注意事项:

  • IAM Identity Center 创建 IAM 角色——当您将 IAM Identity Center 中的用户分配给权限集时,IAM Identity Center 从权限集中创建相应的 IAM 角色。权限集创建的 IAM 角色与通过以下 AWS Identity and Access Management 方式创建的 IAM 角色不同:

    • IAM Identity Center 拥有并保护由权限集创建的角色。只有 IAM Identity Center 可以修改这些角色。

    • 只有 IAM Identity Center 中的用户才能承担与其分配的权限集相对应的角色。您无法将权限集访问权限分配给 IAM 用户、IAM 联合用户或服务账户。

    • 您无法修改这些角色的角色信任策略以允许访问 IAM Identity Center 外部的主体

    有关如何获取您在 IAM 中创建的角色的临时凭证的信息,请参阅 AWS Identity and Access Management 用户指南中的使用临时安全凭证 AWS CLI

  • 您可以为权限集设置会话持续时间 — 登录 AWS 访问门户后,分配给您的 IAM Identity Center 用户的权限集将显示为可用角色。IAM Identity Center 为此角色创建一个单独的会话。此会话可能为 1 到 12 小时,具体取决于为权限集配置的会话持续时间。默认会话持续时间为一小时。有关更多信息,请参阅 设置会话持续时间

获取和刷新临时凭证

您可以自动或手动获取和刷新 IAM Identity Center 用户的临时凭证。

自动刷新凭证(推荐)

自动刷新凭证使用 Open ID Connect(OIDC)设备代码授权标准。该方法是使用 AWS CLI中的 aws configure sso 命令直接发起访问。您可以使用此命令自动访问与分配给您的任何权限集关联的任何角色 AWS 账户。

要访问为您的 IAM Identity Center 用户创建的角色,aws configure sso请运行命令,然后 AWS CLI 从浏览器窗口对其进行授权。只要您的 AWS 访问门户会话处于活动状态, AWS CLI 就会自动检索临时证书并自动刷新证书。

有关详细信息,请参阅 AWS Command Line Interface 用户指南中的 aws configure sso wizard 配置您的配置文件

获取可自动刷新的临时凭证
  1. 使用管理员提供的特定登录 URL 登录 AWS 访问门户。如果您创建了 IAM Identity Center 用户,则会 AWS 发送一封包含您的登录 URL 的电子邮件邀请。有关更多信息,请参阅《登录用户指南》中的AWS 登录 AWS 访问门户

  2. 在 “帐户” 选项卡中,找到要 AWS 账户 从中检索凭据的。当您选择帐户时,会显示与该帐户关联的帐户名称、帐户 ID 和电子邮件地址。

    注意

    如果您没有看到列出的任何 AWS 账户,则可能尚未为该帐户分配权限集。在这种情况下,请联系您的管理员并要求他们为您添加此访问权限。有关更多信息,请参阅 将用户访问权限分配给 AWS 账户

  3. 在账户名称下方,分配给您的 IAM Identity Center 用户的权限集显示为可用角色。例如,如果您的 IAM Identity Center 用户被分配到该账户的PowerUserAccess权限集,则该角色在 AWS 访问门户中显示为PowerUserAccess

  4. 根据角色名称旁边的选项,选择访问密钥或选择命令行或编程访问权限

  5. 在 “获取凭据” 对话框中,选择 macOS 和 LinuxWindows PowerShell,或者,具体取决于您安装的操作系统。 AWS CLI

  6. AWS IAM Identity Center 凭证(推荐)下,将显示您的 SSO Start URLSSO Region。将启用 IAM Identity Center 的配置文件和 sso-session 配置为 AWS CLI需要这些值。要完成此配置,请按照 AWS Command Line Interface 用户指南中的使用 aws configure sso wizard 配置您的配置文件中的说明进行操作。

根据 AWS CLI 需要继续使用, AWS 账户 直到证书过期。

手动凭证刷新

您可以使用手动凭证刷新方法来获取与特定权限集关联的角色的临时证书。 AWS 账户为此,您可以复制并粘贴临时凭证所需的命令。使用此方法,您必须手动刷新临时凭证。

在临时证书到期之前,您可以运行 AWS CLI 命令。

获取您手动刷新的凭证
  1. 使用管理员提供的特定登录 URL 登录 AWS 访问门户。如果您创建了 IAM Identity Center 用户,则会 AWS 发送一封包含您的登录 URL 的电子邮件邀请。有关更多信息,请参阅《登录用户指南》中的AWS 登录 AWS 访问门户

  2. 账户选项卡中,找到您要 AWS 账户 从中检索访问凭证的,然后将其展开以显示 IAM 角色名称(例如管理员)。根据您在 IAM 角色名称旁边的选项,选择访问密钥或选择命令行或编程访问权限

    注意

    如果您没有看到列出的任何 AWS 账户,则可能尚未为该帐户分配权限集。在这种情况下,请联系您的管理员并要求他们为您添加此访问权限。有关更多信息,请参阅 将用户访问权限分配给 AWS 账户

  3. 在 “获取凭据” 对话框中,选择 macOS 和 Linux PowerShellWindows 或,具体取决于您安装的操作系统。 AWS CLI

  4. 选择以下任一选项:

    • 选项 1:设置 AWS 环境变量

      选择此选项可覆盖所有凭据设置,包括credentials文件和config文件中的任何设置。有关更多信息,请参阅 AWS CLI 用户指南中的环境变量配置 AWS CLI

      要使用此选项,请将命令复制到剪贴板,将命令粘贴到 AWS CLI 终端窗口,然后按 Enter 键设置所需的环境变量。

    • 选项 2:在您的 AWS 凭证文件中添加个人资料

      选择此选项可使用不同的凭证集运行命令。

      要使用此选项,请将命令复制到剪贴板,然后将命令粘贴到共享 AWS credentials文件中以设置新的命名配置文件。有关更多信息,请参阅 AWS 开发工具包和工具参考指南中的共享配置和凭证文件。要使用此凭证,请在 AWS CLI 命令中指定该--profile选项。这会影响使用相同凭证文件的所有环境。

    • 选项 3:在 AWS 服务客户端中使用个人值

      选择此选项可从 AWS 服务客户端访问 AWS 资源。有关更多信息,请参阅构建工具 AWS

      要使用此选项,请将值复制到剪贴板,将这些值粘贴到代码中,然后将其分配给适合您的 SDK 的相应变量。有关更多信息,请参阅特定 SDK API 的文档。