选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

假设角色使用网络身份或 OpenID Connect 进行身份验证和工具 AWS SDKs - AWS SDKs 和工具

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

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

假设角色使用网络身份或 OpenID Connect 进行身份验证和工具 AWS SDKs

假设角色涉及使用一组临时安全凭证来访问您原本无法访问的 AWS 资源。这些临时凭证由访问密钥 ID、秘密访问密钥和安全令牌组成。要了解有关 AWS Security Token Service (AWS STS)API 请求的更多信息,请参阅《AWS Security Token Service API 参考》中的操作

要设置您的 SDK 或工具来代入角色,必须先创建或标识要代入的特定角色。IAM 角色由角色 Amazon 资源名称(ARN)进行唯一标识。角色与另一个实体建立信任关系。使用该角色的可信实体可能是网络身份提供商、OpenID Connect (OIDC) 或 SAML 联合体。要了解有关 IAM 角色的更多信息,请参阅 IAM 用户指南中的代入角色的方法

在您的软件开发工具包中配置 IAM 角色后,如果将该角色配置为信任您的身份提供商,则可以进一步配置您的软件开发工具包以代入该角色以获得临时 AWS 证书。

注意

AWS 最佳做法是尽可能使用区域终端节点并配置您的终端节点AWS 区域

使用 Web 身份或 OpenID Connect 进行联合

你可以使用公共身份提供商(例如 Login With Amazon、Facebook、GoogleJWTs)提供的 JSON 网络令牌 () 来获取临时 AWS 证书AssumeRoleWithWebIdentity。根据它们的使用方式,它们 JWTs可能被称为 ID 令牌或访问令牌。您也可以使用由与 OIDC 发现协议兼容的身份提供商 (IdPs) JWTs 签发,例如 EntraId 或。 PingFederate

如果您使用的是 Amazon Elastic Kubernetes Service,则此功能允许您为 Amazon EKS 集群中的每个服务账户指定不同的 IAM 角色。这个 Kubernetes 功能会分发 JWTs 到你的 pod 中,然后由该凭证提供者使用这些容器来获取临时证书。 AWS 有关此 Amazon EKS 配置的更多信息,请参阅《Amazon EKS 用户指南》中的服务账户的 IAM 角色。但是,对于更简单的选项,我们建议您改用 Amazon EKS 容器组身份,前提是您的 SDK 支持它

步骤 1:设置身份提供者和 IAM 角色

要配置与外部 IdP 的联合,请使用 IAM 身份提供商 AWS 通知外部 IdP 及其配置。这将在您 AWS 账户 和外部 IdP 之间建立信任。在将 SDK 配置为使用 JSON Web 令牌 (JWT) 进行身份验证之前,必须先设置身份提供商 (IdP) 和用于访问它的 IAM 角色。要进行设置,请参阅 IAM 用户指南中的 创建 Web 身份或 OpenID Connect 联合身份验证角色(控制台)

步骤 2:配置 SDK 或工具

将 SDK 或工具配置为使用来自的 JSON Web 令牌 (JWT) AWS STS 进行身份验证。

当您在配置文件中指定此项时,SDK 或工具会自动为您调用相应 AWS STS AssumeRoleWithWebIdentity的 API。要使用 Web 联合身份验证检索和使用临时证书,请在共享 AWS config文件中指定以下配置值。有关这些设置各自的更多信息,请参阅 代入角色凭证提供者设置 节。

  • role_arn - 来自您在步骤 1 中创建的 IAM 角色

  • web_identity_token_file - 来自外部 IdP

  • (可选)duration_seconds

  • (可选)role_session_name

以下是使用 Web 身份代入角色的共享 config 文件配置示例:

[profile web-identity] role_arn=arn:aws:iam::123456789012:role/my-role-name web_identity_token_file=/path/to/a/token
注意

有关移动应用程序,请考虑使用 Amazon Cognito。Amazon Cognito 充当身份凭证代理程序并为您完成许多联合身份验证工作。但是,Amazon Cognito 身份提供商不像其他身份提供商那样包含在 SDKs 和工具核心库中。要访问 Amazon Cognito API,请在您的 SDK 或工具的构建或库中包含 Amazon Cognito 服务客户端。有关用法 AWS SDKs,请参阅 Amazon Cognito 开发者指南中的代码示例

有关所有代入角色凭证提供程序设置的详细信息,请参阅本指南中的 代入角色凭证提供者

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。