配置基础知识
此部分介绍如何使用 Amazon Command Line Interface (Amazon CLI) 用来与 Amazon 交互的 config
和 credentials
文件,快速配置基本设置。其中包括您的安全凭证、原定设置输出格式和原定设置 Amazon 区域。如需改为查看 Amazon IAM Identity Center (successor to Amazon Single Sign-On) 的配置说明,请参阅 配置 Amazon CLI 以使用 Amazon IAM Identity Center (successor to Amazon Single Sign-On)。
注意
Amazon要求所有传入的请求都进行加密签名。Amazon CLI 为您执行该操作。“签名”包括日期/时间戳。因此,您必须确保正确设置电脑的日期和时间。否则,如果签名中的日期/时间与 Amazon 服务认定的日期/时间相差太远,Amazon 会拒绝请求。
使用 aws
configure
快速配置
对于一般用途,aws configure
命令是设置 Amazon CLI 安装的最快方法。输入该命令时,Amazon CLI 会提示您输入四条信息:
Amazon CLI 将这些信息存储在 default
文件中名为 credentials
的配置文件(一个设置集合)中。预设情况下,当您运行的 Amazon CLI 命令未明确指定要使用的配置文件时,将使用此配置文件中的信息。有关 credentials
文件的更多信息,请参阅配置和凭证文件设置
以下示例显示了示例值。将它们替换为您自己的值,如以下部分所述。
$
aws configure
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
AKIAIOSFODNN7EXAMPLE
Default region name [None]:
wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default output format [None]:
us-west-2
json
访问密钥 ID 和秘密访问密钥
访问密钥使用访问密钥 ID 和秘密访问密钥,用于签署对 Amazon 发出的编程请求。
创建密钥对
如果用户需要在 Amazon Web Services Management Console 之外与 Amazon 交互,则需要编程式访问权限。Amazon API 和 Amazon Command Line Interface 需要访问密钥。可能的话,创建临时凭证,该凭证由一个访问密钥 ID、一个秘密访问密钥和一个指示凭证何时到期的安全令牌组成。
要向用户授予编程式访问权限,请选择以下选项之一。
哪个用户需要编程式访问权限? | 目的 | 方式 |
---|---|---|
IAM | 使用短期凭证签署对 Amazon CLI 或 Amazon API 的编程式请求(直接或使用 Amazon SDK)。 | 按照《IAM 用户指南》中将临时凭证用于 Amazon 资源中的说明进行操作。 |
IAM | 使用长期凭证签署对 Amazon CLI 或 Amazon API 的编程式请求(直接或使用 Amazon SDK)。 (不推荐使用) |
按照《IAM 用户指南》中管理 IAM 用户的访问密钥中的说明进行操作。 |
通过 .CSV 文件导入密钥对
可以在创建密钥对之后导入下载的 .csv
文件,而不是使用 aws configure
输入密钥对。
.csv
文件必须包含以下标头。
-
用户名 - 必须将此列添加到您的
.csv
。这用于在导入时创建配置文件名称。 -
访问密钥 ID
-
秘密访问密钥
注意
在创建初始密钥对期间,一旦您关闭 Download .csv file(下载 .csv 文件)对话框,在关闭该对话框之后就无法访问秘密访问密钥了。如果您需要 .csv
文件,则需要自己创建一个包含所需标头和存储的密钥对信息的文件。如果您无法访问密钥对信息,则需要创建新的密钥对。
要导入 .csv
文件,请将 aws configure
import
命令与 --csv
选项结合使用,如下所示:
$
aws configure import --csv
file://credentials.csv
有关更多信息,请参阅aws_configure_import
。
区域
Default region name
标识默认情况下您要将请求发送到的服务器所在的 Amazon 区域。通常是离您最近的区域,但可以是任意区域。例如,您可以键入 us-west-2
以使用美国西部(俄勒冈)。除非在命令中另行指定,否则这是所有后续请求将发送到的区域。
注意
使用 Amazon 时,必须明确指定或通过设置原定设置区域来指定 Amazon CLI 区域。有关可用区域的列表,请参阅区域和终端节点。Amazon CLI 使用的区域指示符与您在 Amazon Web Services Management Console URL 和服务终端节点中看到的名称相同。
输出格式
Default output format
指定结果的格式。可以是以下列表中的任何值。如果未指定输出格式,则原定设置使用 json
。
配置文件
设置的集合称为配置文件。预设情况下,Amazon CLI 使用 default
配置文件。您可以通过指定 --profile
选项并指定名称来创建和使用具有不同的凭证和设置的其他命名配置文件。
以下示例创建一个名为 produser
的配置文件。
$
aws configure --profile produser
AWS Access Key ID [None]:
AKIAI44QH8DHBEXAMPLE
AWS Secret Access Key [None]:
je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
Default region name [None]:
us-east-1
Default output format [None]:
text
之后,您可以指定 --profile
并使用按该名称存储的凭证和设置。profilename
$
aws s3 ls --profile
produser
要更新这些设置,请再次运行 aws configure
(根据要更新的配置文件,使用或不使用 --profile
参数),并根据需要输入新值。下面几节包含有关 aws configure
创建的文件、其他设置和命名配置文件的更多信息。
有关命名配置文件的更多信息,请参阅Amazon CLI 的命名配置文件。
配置设置和优先顺序
Amazon CLI 使用位于不同位置(例如,系统或用户环境变量、本地 Amazon 配置文件)或在命令行上显式声明为参数的凭证和配置设置。某些位置优先于其他位置。Amazon CLI 凭证和配置设置的优先顺序如下:
-
命令行选项 – 覆盖任何其他位置的设置。您可以在命令行上指定
--region
、--output
和--profile
作为参数。 -
环境变量 – 您可以在系统的环境变量中存储值。
-
CLI 凭证文件 – 在运行
credentials
命令时,将更新config
和aws configure
文件。credentials
文件位于~/.aws/credentials
(在 Linux 或 macOS 上)或C:\Users\
(在 Windows 上)。该文件可以包含USERNAME
\.aws\credentialsdefault
配置文件和任何命名配置文件的凭证详细信息。 -
CLI 配置文件 – 在运行
credentials
命令时,将更新config
和aws configure
文件。config
文件位于~/.aws/config
(在 Linux 或 macOS 上)或C:\Users\
(在 Windows 上)。该文件包含原定设置配置文件和任何命名配置文件的配置设置。USERNAME
\.aws\config -
容器凭证 – 您可以将 IAM 角色与每个 Amazon Elastic Container Service (Amazon ECS) 任务定义关联。之后,该任务的容器就可以使用该角色的临时凭证。有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的任务的 IAM 角色。
-
Amazon EC2 实例配置文件凭证 – 您可以将 IAM 角色与每个 Amazon Elastic Compute Cloud (Amazon EC2) 实例关联。之后,在该实例上运行的代码就可以使用该角色的临时凭证。凭证通过 Amazon EC2 元数据服务提供。有关更多信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例)中的 Amazon EC2 的 IAM 角色和 IAM 用户指南中的使用实例配置文件 。