教程:使用IAM身份中心在中运行 Amazon S3 命令 AWS CLI - AWS Command Line Interface

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

教程:使用IAM身份中心在中运行 Amazon S3 命令 AWS CLI

本主题介绍如何配置以使用当前 AWS IAM Identity Center (身份中心)对用户进行IAM身份验证,以检索要运行 AWS Command Line Interface (AWS CLI) 命令 Amazon Simple Storage Service (Amazon S3) 的证书。 AWS CLI

步骤 1:在身份中心进行IAM身份验证

获取身份中心内SSOIAM身份验证的访问权限。选择以下方法之一来访问您的 AWS 证书。

请按照《AWS IAM Identity Center 用户指南》入门中的说明操作。此过程激活 Ident IAM ity Center、创建管理用户并添加相应的最低权限权限集。

注意

创建应用最低权限权限的权限集。除非您的雇主已为此目的创建自定义权限集,否则建议使用预定义的 PowerUserAccess 权限集。

退出门户并再次登录 AWS 账户,以查看您的编程访问权限详细信息以及Administrator或选项PowerUserAccessPowerUserAccess在使用时选择SDK。

AWS 通过您的身份提供商的门户网站登录。如果您的云管理员已授予您PowerUserAccess(开发者)权限,则您 AWS 账户 会看到您有权访问的权限和权限集。在您的权限集名称旁边,可以看到有关使用该权限集手动或以编程方式访问账户的选项。

自定义实现可能会产生不同的体验,例如不同的权限集名称。如果您不确定要使用哪个权限集,请联系 IT 团队以寻求帮助。

AWS 通过您的 AWS 访问门户登录。如果您的云管理员已授予您PowerUserAccess(开发者)权限,则您 AWS 账户 会看到您有权访问的权限和权限集。在您的权限集名称旁边,可以看到有关使用该权限集手动或以编程方式访问账户的选项。

请联系您的 IT 团队以寻求帮助。

第 2 步:收集您的IAM身份中心信息

获得访问权限后 AWS,通过执行以下操作收集您的IAM身份中心信息:

  1. 在您的 AWS 访问门户中,选择用于开发的权限集,然后选择访问密钥链接。

  2. 在 “获取凭据” 对话框中,选择与您的操作系统相匹配的选项卡。

  3. 选择 Id IAMentity Center 凭证方法以获取需要运行的SSO Start URLSSO Regionaws configure sso。有关要注册哪些范围值的信息,请参阅 Ident IAMity Center 用户指南中的 OAuth2.0 访问权限范围

第 3 步:创建 Amazon S3 存储桶

登录 AWS Management Console 并打开 Amazon S3 控制台,网址为https://console.aws.amazon.com/s3/

在本教程中,创建几个存储桶,以便稍后在列表中检索。

第 4 步:安装 AWS CLI

按照 AWS CLI 以下说明安装适用于您的操作系统。有关更多信息,请参阅 安装或更新到最新版本的 AWS CLI

安装完成后,您可以打开首选终端并运行以下命令来验证安装情况。这应该会显示您已安装的版本 AWS CLI。

$ aws --version

第 6 步:配置您的 AWS CLI 个人资料

使用以下方法之一配置您的个人资料

config文件的sso-session部分用于对用于获取SSO访问令牌的配置变量进行分组,然后可以使用这些变量来获取 AWS 凭证。使用了以下设置:

您可以定义sso-session截面并将其与截面关联。必须在该sso-session部分中sso_start_url设置sso_region和设置。通常,sso_role_name必须在profile部分中设置sso_account_id和,以便SDK可以请求SSO证书。

以下示例将配置为请求SSO凭证并支持自动刷新令牌:SDK

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start

config文件的sso-session部分用于对用于获取SSO访问令牌的配置变量进行分组,然后可以使用这些变量来获取 AWS 凭证。使用了以下设置:

您定义一个 sso-session 部分并将其关联到配置文件。必须在 sso-session 部分内设置 sso_regionsso_start_url。通常,sso_role_name必须在profile部分中设置sso_account_id和,以便SDK可以请求SSO证书。

以下示例将配置为请求SSO凭证并支持自动刷新令牌:SDK

[profile my-dev-profile] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

身份验证令牌缓存到 ~/.aws/sso/cache 目录下的磁盘上,文件名基于会话名称。

步骤 7:登录IAM身份中心

注意

登录过程可能会提示您允许 AWS CLI 访问您的数据。由于 AWS CLI 是在SDK适用于 Python 的基础上构建的,因此权限消息可能包含botocore名称的变体。

要检索和缓存您的 IAM Identity Center 凭据,请运行以下命令 AWS CLI 以打开您的默认浏览器并验证您的 Ident IAM ity Center 登录信息。

$ aws sso login --profile my-dev-profile

第 8 步:运行 Amazon S3 命令

要列出您之前创建的存储桶,请使用aws s3 ls命令。以下示例列出您的所有 Amazon S3 存储桶。

$ aws s3 ls 2018-12-11 17:08:50 my-bucket 2018-12-14 14:55:44 my-bucket2

第 9 步:注销IAM身份中心

使用完您的 Ident IAM ity Center 个人资料后,运行以下命令以删除缓存的凭据。

$ aws sso logout Successfully signed out of all SSO profiles.

步骤 10:清理资源

完成本教程后,请清理在本教程中创建的所有不再需要的资源,包括 Amazon S3 存储桶。

故障排除

如果您在使用时遇到问题 AWS CLI,请参阅,了解常见对错误进行故障排除 AWS CLI的故障排除步骤。

其他资源

其他资源如下。