

 适用于 Java 的 AWS SDK 1.x于2025年 end-of-support 12月31日达到。我们建议您迁移到 [AWS SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/home.html) 以继续获得新功能、可用性改进和安全更新。

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

# 要使用的基本设置 AWS 服务
<a name="signup-create-iam-user"></a>

## 概述
<a name="signup-create-iam-user-overview"></a>

要成功开发 AWS 服务 使用访问的应用程序 适用于 Java 的 AWS SDK，需要满足以下条件：
+ 您必须能够[登录 AWS IAM Identity Center中提供的 AWS 访问门户](#setup-awsaccount)。
+ 为软件开发工具包配置[的 IAM 角色的权限](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)必须允许访问您的应用程序所需的权限。 AWS 服务 与**PowerUserAccess** AWS 托管策略关联的权限足以满足大多数开发需求。
+ 包含以下元素的开发环境：
  + 通过以下方式设置的[共享配置文件](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html)：
    + 该`config`文件包含一个默认配置文件，该配置文件指定 AWS 区域.
    + `credentials` 文件包含作为默认配置文件一部分的临时凭证。
  + 一个合适的 [Java 安装](#java-dg-java-env)。
  + 一种[构建自动化工具](setup-build-tools.md)，例如 [Maven](https://maven.apache.org/download.cgi) 或 [Gradle](https://gradle.org/install/)。
  + 用于处理代码的文本编辑器。
  + （可选，但建议使用）IDE（集成开发环境），例如 [IntelliJ ID](https://www.jetbrains.com/idea/download/#section=windows) EA、[Eclipse 或](https://www.eclipse.org/ide/)。[NetBeans](https://netbeans.org/downloads/)

    使用 IDE 时，还可以集成 AWS Toolkit，以便更轻松地使用 AWS 服务。[AWS Toolkit for IntelliJ](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html) 和 [AWS Toolkit for Eclipse](https://docs.aws.amazon.com/toolkit-for-eclipse/v1/user-guide/welcome.html) 是两个可用于 Java 开发的工具包。

**重要**  
本设置部分中的说明假设您或组织使用 IAM Identity Center。如果您的组织使用独立于 IAM Identity Center 运行的外部身份提供商，请了解如何获取临时凭证以供适用于 Java 的 SDK 使用。按照[以下说明](#setup-temp-creds)向 `~/.aws/credentials` 文件添加临时凭证。  
如果您的身份提供商自动向 `~/.aws/credentials` 文件添加临时凭证，请确保配置文件名称为 `[default]`，这样您就无需向 SDK 或 AWS CLI提供配置文件名称。

## AWS 访问门户的登录能力
<a name="setup-awsaccount"></a>

 AWS 访问门户是您手动登录 IAM 身份中心的网址。URL 的格式为 `d-xxxxxxxxxx.awsapps.com/start` 或 `your_subdomain.awsapps.com/start`。

如果您不熟悉 AWS 访问门户，请按照 AWS SDKs 和工具参考指南中 [IAM Identity Center 身份验证主题步骤 1](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html#idcGettingStarted) 中的账户访问指南进行操作。请勿执行步骤 2，因为 适用于 Java 的 AWS SDK 1.x 不支持步骤 2 所描述的 SDK 的自动令牌刷新和自动检索临时证书。

## 设置共享配置文件
<a name="setup-shared-config-files"></a>

共享的配置文件位于您的开发工作站上，包含所有 AWS SDKs 和 AWS Command Line Interface (CLI) 使用的基本设置。共享配置文件可以包含[许多设置](https://docs.aws.amazon.com/sdkref/latest/guide/settings-reference.html)，但本说明用于设置使用 SDK 所需的基本元素。

### 设置共享 `config` 文件
<a name="setup-shared-config-files-conf"></a>

以下示例展示了共享 `config` 文件的内容。

```
[default]
region=us-east-1
output=json
```

出于开发目的，请使用离你计划运行代码的地方 AWS 区域 [最近](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/)的。有关可在 `config` 文件中使用的[区域代码的列表](https://docs.aws.amazon.com/general/latest/gr/rande.html#region-names-codes)，请参阅 Amazon Web Services 一般参考 指南。输出格式的 `json` 设置是[几个可能的值](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-output-format.html)之一。

按照[此部分中](https://docs.aws.amazon.com/sdkref/latest/guide/file-location.html)的指导创建 `config` 文件。

### 为 SDK 设置临时凭证
<a name="setup-temp-creds"></a>

通过访问门户 AWS 访问 AWS 账户 和 IAM 角色后，请使用临时证书配置您的开发环境以供开发工具包访问。

**使用临时凭证设置本地 `credentials` 文件的步骤**

1. [创建共享 `credentials` 文件](https://docs.aws.amazon.com/sdkref/latest/guide/file-location.html)。

1. 在 `credentials` 文件中，粘贴以下占位符文本，直到粘贴有效的临时凭证为止。

   ```
   [default]
   aws_access_key_id=<value from AWS access portal>
   aws_secret_access_key=<value from AWS access portal>
   aws_session_token=<value from AWS access portal>
   ```

1. 保存该文件。该 `~/.aws/credentials` 文件现在应该存在于您的本地开发系统上。此文件包含 [[默认] 配置文件](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html#file-format-profile)，如果未指定特定的命名配置文件，则适用于 Java 的 SDK 将使用该配置文件。

1. [登录 AWS 访问门户](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtosignin.html)。

1. 按照[手动刷新凭证](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtogetcredentials.html#how-to-get-temp-credentials)标题下的说明从 AWS 访问门户复制 IAM 角色证书。

   1. 对于链接的说明中的步骤 4，选择可授予访问权限以满足您的开发需求的 IAM 角色名称。此角色的名称通常类似于**PowerUserAccess**或**开发人员**。

   1. 对于步骤 7，选择**将配置文件手动添加到您的 AWS 凭证文件**选项并复制内容。

1. 将复制的凭证粘贴到您的本地 `credentials` 文件中，并移除所有已粘贴的配置文件名称。您的文件应类似于以下内容：

   ```
   [default]
   aws_access_key_id=AKIAIOSFODNN7EXAMPLE
   aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
   ```

1. 保存 `credentials` 文件

当适用于 Java 的 SDK 创建服务客户端时，它将访问这些临时凭证并将它们用于每个请求。在步骤 5a 中选择的 IAM 角色的设置决定了[临时凭证的有效时间](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtosessionduration.html)。最长持续时间为 12 小时。

在临时凭证过期后，重复步骤 4 到 7。

## 安装 Java 开发环境
<a name="java-dg-java-env"></a>

 适用于 Java 的 AWS SDK V1 需要 Java 7 JDK 或更高版本，并且支持所有 Java LTS（长期支持）JDK 版本。如果您使用 SDK 版本 1.12.767 或更早版本，则可以使用 Java 7，但是如果您使用 SDK 版本 1.12.768 或更高版本，则需要 Java 8。[Maven 中央存储库](https://central.sonatype.com/artifact/com.amazonaws/aws-java-sdk-bom)列出了适用于 Java 的 SDK 的最新版本。

 适用于 Java 的 AWS SDK [https://developers.redhat.com/products/openjdk/overview](https://developers.redhat.com/products/openjdk/overview)