配置对临时凭证的访问权限 - Amazon SDK for Java 2.x
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

配置对临时凭证的访问权限

为了提高安全性, Amazon 建议您将SDK适用于 Java 的配置为使用临时凭证而不是长期证书。临时凭证由访问密钥(访问密钥 ID 与秘密访问密钥)和会话令牌组成。我们建议您将配置SDK为自动获取临时证书,因为令牌刷新过程是自动的。但是,您可以直接为SDK提供临时证书

IAM身份中心配置

按照本指南中的设置概述说明将配置SDK为使用 Ident IAM ity Center 单点登录访问权限时,SDK会自动使用临时证书。

SDK使用 Ident IAM ity Center 访问令牌来访问使用config文件中的sso_role_name设置配置的IAM角色。SDK担任此IAM角色并检索用于 Amazon Web Services 服务 请求的临时证书。

有关如何从配置中SDK获取临时证书的更多详细信息,请参阅 Amazon SDKs和工具参考指南的了解IAM身份中心身份验证部分。

注意

除了您在config文件中设置的适用于所有项目的配置外,每个 Java 项目都要求 Maven pom.xml 文件包含以下依赖项:

<dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>sso</artifactId> </dependency> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>ssooidc</artifactId> </dependency>

ssossooidc依赖项提供了允许 Java 2.x 访问临时凭证的代码。SDK

从 Amazon 访问门户检索

作为 Ident IAM ity Center 单点登录配置的替代方案,您可以复制和使用 Amazon 访问门户中提供的临时证书。您可以在配置文件中使用临时凭证,也可以将其用作系统属性和环境变量的值。

为临时凭证设置本地凭证文件
  1. 创建共享 credentials 文件

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

    [default] aws_access_key_id=<value from Amazon access portal> aws_secret_access_key=<value from Amazon access portal> aws_session_token=<value from Amazon access portal>
  3. 保存该文件。该 ~/.aws/credentials 文件现在应该存在于您的本地开发系统上。此文件包含 [默认] 配置文件,如果未指定特定的命名配置文件,for Java 将使用该配置文件。SDK

  4. 登录 Amazon 访问门户

  5. 按照 “手动刷新凭据” 标题下的说明从 Amazon 访问门户复制IAM角色证书。

    1. 对于链接说明中的第 4 步,请选择可根据您的开发需求授予访问权限的IAM角色名称。此角色的名称通常类似于PowerUserAccess开发人员

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

  6. 将复制的凭证粘贴到您的本地 credentials 文件中,并移除生成的配置文件名称。您的文件应类似于以下内容。

    [default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
  7. 保存 credentials 文件。

当 f SDK or Java 创建服务客户端时,它将访问这些临时凭证并将其用于每个请求。在步骤 5a 中选择的IAM角色的设置决定了临时证书的有效期限。最长持续时间为 12 小时。

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