

这是 AWS CDK v2 开发者指南。旧版 CDK v1 于 2022 年 6 月 1 日进入维护阶段，并于 2023 年 6 月 1 日终止支持。

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

# 为 AWS CDK CLI 配置安全凭证
<a name="configure-access"></a>

使用 AWS 云开发工具包 (AWS CDK) 在本地环境中开发应用程序时，您将主要使用 AWS CDK 命令行界面 (AWS CDK CLI) 与 AWS 进行交互。例如，您可以使用 CDK CLI 部署应用程序或从 AWS 环境中删除资源。

要使用 CDK CLI 与 AWS 进行交互，您必须在本地计算机上配置安全凭证。这可以让 AWS 知道您的身份以及您拥有的权限。

要了解有关安全凭证的更多信息，请参阅《IAM 用户指南》**中的 [AWS 安全凭证](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds.html)。

## 先决条件
<a name="configure-access-prerequisites"></a>

配置安全凭证是*入门*过程的一部分。完成[开始使用 AWS CDK](getting-started.md) 中的所有先决条件和前面的步骤。

## 如何配置安全凭证
<a name="configure-access-how"></a>

如何配置安全凭证取决于您或您的组织如何管理用户。无论您使用 AWS Identity and Access Management (IAM) 还是 AWS IAM Identity Center，我们都建议您使用 AWS 命令行界面 (AWS CLI) 来配置和管理 CDK CLI 的安全凭证。这包括使用 `aws configure` 等 AWS CLI 命令在本地计算机上配置安全凭证。但是，您可以使用替代方法，例如手动更新 `config` 和 `credentials` 文件或设置环境变量。

有关使用 AWS CLI 配置安全凭证的指导以及有关使用不同方法时的配置和凭证优先级的信息，请参阅《AWS 命令行界面用户指南》**中的[身份验证和访问凭证](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-authentication.html)。CDK CLI 遵循与 AWS CLI 相同的配置和凭证优先级。`--profile` 命令行选项优先于环境变量。如果您同时配置了 `AWS_PROFILE` 和 `CDK_DEFAULT_PROFILE` 环境变量，则 `AWS_PROFILE` 环境变量优先。

如果您配置了多个配置文件，则可以将 CDK CLI ` --profile ` 选项与任何命令结合使用，以从 `credentials` 和 `config` 文件中指定要用于身份验证的配置文件。如果您不提供 `--profile`，则将使用 `default` 配置文件。

如果您希望快速配置基本设置（包括安全凭证），请参阅《AWS 命令行界面用户指南》**中的[设置 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html)。

在本地计算机上配置安全凭证后，您可以使用 CDK CLI 与 AWS 进行交互。

## 为 IAM Identity Center 用户配置和管理安全凭证
<a name="configure-access-sso"></a>

IAM Identity Center 用户可以通过 IAM Identity Center 进行身份验证，也可以使用短期凭证手动进行身份验证。<a name="configure-access-sso-auto"></a>

 **通过 IAM Identity Center 进行身份验证以生成短期凭证**   
您可以将 AWS CLI 配置为通过 IAM Identity Center 进行身份验证。这是为 IAM Identity Center 用户配置安全凭证的推荐方法。IAM Identity Center 用户可以使用 AWS CLI `aws configure sso` 向导配置 IAM Identity Center 配置文件和 `sso-session`，它们存储在本地计算机上的 `config` 文件中。有关说明，请参阅《AWS 命令行界面用户指南》**中的 [Configure the AWS CLI to use AWS IAM Identity Center](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html)。  
接下来，您可以使用 AWS CLI `aws sso login` 命令请求刷新的凭证。您还可以使用此命令切换配置文件。有关说明，请参阅《AWS 命令行界面用户指南》**中的[使用 IAM Identity Center 命名配置文件](https://docs.aws.amazon.com/cli/latest/userguide/sso-using-profile.html)。  
通过身份验证后，您就可以在会话期间使用 CDK CLI 与 AWS 进行交互。有关示例，请参阅[示例：使用 IAM Identity Center 自动刷新令牌进行身份验证以用于 AWS CDK CLI](configure-access-sso-example-cli.md)。<a name="configure-access-sso-manual"></a>

 **手动配置短期凭证**   
作为使用 AWS CLI 和通过 IAM Identity Center 进行身份验证的替代方案，IAM Identity Center 用户可以从 AWS 管理控制台中获取短期凭证，并在本地计算机上手动配置 `credentials` 和 `config` 文件。配置完成后，您可以使用 CDK CLI 与 AWS 进行交互，直到凭证到期。有关说明，请参阅《AWS 命令行界面用户指南》**中的[使用短期凭证进行身份验证](https://docs.aws.amazon.com/cli/latest/userguide/cli-authentication-short-term.html)。

## 为 IAM 用户配置和管理安全凭证
<a name="configure-access-iam"></a>

IAM 用户可以将 IAM 角色或 IAM 用户凭证与 CDK CLI 结合使用。<a name="configure-access-iam-role"></a>

 **使用 IAM 角色配置短期凭证**   
IAM 用户可以担任 IAM 角色以获得其他（或不同）权限。对于 IAM 用户，这是推荐的方法，因为可提供短期凭证。  
首先，必须配置 IAM 角色以及用户担任此角色的权限。这通常由管理员使用 AWS 管理控制台或 AWS CLI 执行。然后，IAM 用户可以使用 AWS CLI 担任角色并在其本地计算机上配置短期凭证。有关说明，请参阅《AWS 命令行界面用户指南》**中的[在 AWS CLI 中使用 IAM 角色](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-role.html)。<a name="configure-access-iam-user"></a>

 **使用 IAM 用户凭证**   
为避免安全风险，我们不建议使用 IAM 用户凭证，因为它们提供长期访问权限。如果您必须使用长期凭证，我们建议您[更新访问密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#rotate-credentials)，以此作为 IAM 安全最佳实践。
IAM 用户可以从 AWS 管理控制台获取访问密钥。然后，您可以使用 AWS CLI 在本地计算机上配置长期凭证。有关说明，请参阅《AWS 命令行界面用户指南》**中的[使用 IAM 用户凭证进行身份验证](https://docs.aws.amazon.com/cli/latest/userguide/cli-authentication-user.html)。

## 其他信息
<a name="configure-access-info"></a>

要根据用户类型了解您可以登录 AWS 的不同方式，请参阅《AWS 登录用户指南》**中的[什么是 AWS 登录？](https://docs.aws.amazon.com/signin/latest/userguide/what-is-sign-in.html)。

有关使用 AWS SDK 和工具（包括 AWS CLI）时的参考信息，请参阅 [AWS SDK 和工具参考指南](https://docs.aws.amazon.com/sdkref/latest/guide/overview.html)。