本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon STS 区域终端节点
注意
如需了解设置页面布局或解释后面的 Support b y Amazon SDKs 和 tools 表格的帮助,请参阅了解本指南的设置页面。
Amazon Security Token Service (Amazon STS) 既提供全球服务,也提供区域服务。其中一些 Amazon SDKs和默认 CLIs 使用全球服务终端节点 (https://sts.amazonaws.com
),而有些则使用区域服务终端节点 (https://sts.
)。在默认启用的区域中,向 Amazon STS 全球终端节点发出的请求会自动在请求发起的同一区域中提供服务。在可选区域中,向 Amazon STS 全球终端节点发出的请求由一个 Amazon Web Services 区域美国东部(弗吉尼亚北部)提供服务。有关 Amazon STS 终端节点的更多信息,请参阅 Amazon Security Token Service API 参考 Amazon STS 中的终端节点或Amazon Identity and Access Management 用户指南 Amazon Web Services 区域中的管理。{region_identifier}
.{partition_domain}
Amazon 最佳做法是尽可能使用区域终端节点并配置您的终端节点Amazon Web Services 区域。非商业分区的客户必须使用区域终端节点。并非所有 SDKs 工具都支持此设置,但所有工具都围绕全球和区域端点定义了行为。有关更多信息,请参阅下文的 部分。
注意
Amazon 已对默认启用的区域中的 Amazon Security Token Service (Amazon STS) 全球终端节点 (https://sts.amazonaws.com
) 进行了更改,以增强其弹性和性能。 Amazon STS 对全局终端节点的请求将自动以与您的工作负载 Amazon Web Services 区域 相同的方式处理。这些更改不会部署到选择加入的区域。我们建议您使用适当的 Amazon STS 区域终端节点。有关更多信息,请参阅《Amazon Identity and Access Management 用户指南》中的Amazon STS 全局端点更改。
对于支持此设置的 SDKs 和工具,客户可以使用以下方式配置功能:
sts_regional_endpoints
-共享 Amazonconfig
文件设置AWS_STS_REGIONAL_ENDPOINTS
- 环境变量-
此设置指定 SDK 或工具如何确定用于与 Amazon Security Token Service (Amazon STS) 通信的 Amazon Web Services 服务 端点。
默认值:
legacy
注意
2022 年 7 月之后发布的所有新 SDK 主要版本都将默认为
regional
。新的 SDK 主要版本可能会删除此设置并使用regional
行为。为了减少此变更对未来的影响,我们建议您尽可能在应用程序中开始使用regional
。有效值:(建议的值:
regional
)-
legacy
— 使用全局 Amazon STS 终端节点sts.amazonaws.com
。 -
regional
— SDK 或工具始终使用当前配置区域的 Amazon STS 终端节点。例如,如果将客户端配置为使用us-west-2
,则对的所有调用都将 Amazon STS 发送到区域终端节点sts.us-west-2.amazonaws.com
,而不是全球sts.amazonaws.com
终端节点。要在启用此设置时向全局端点发送请求,您可以将区域设置为aws-global
。
在
config
文件中设置这些值的示例:[default] sts_regional_endpoints = regional
Linux/macOS 通过命令行设置环境变量的示例:
export AWS_STS_REGIONAL_ENDPOINTS=regional
Windows 通过命令行设置环境变量的示例:
setx AWS_STS_REGIONAL_ENDPOINTS regional
-
Support by Amazon SDKs and 工具
注意
Amazon 最佳做法是尽可能使用区域终端节点并配置您的终端节点Amazon Web Services 区域。
下表汇总了您的 SDK 或工具:
-
支持设置:是否支持 STS 区域端点的共享
config
文件变量和环境变量。 -
默认设置值:该设置的默认值(如果支持)。
-
默认服务客户端目标 STS Endp oint:即使更改默认端点的设置不可用,客户端也会使用哪个默认端点。
-
服务客户端回退行为:当 SDK 本应使用区域终端节点但尚未配置区域时,它会做什么。无论它使用区域终端节点是因为默认还是因为设置选择
regional
了区域端点,都会出现这种行为。
该表还使用了以下值:
-
全局终端节点:
https://sts.amazonaws.com
. -
区域终端节点:基于您的应用程序Amazon Web Services 区域使用的配置。
-
us-east-1
(区域):使用us-east-1
区域终端节点,但会话令牌比典型的全局请求长。
SDK |
支持设置 |
默认设置值 |
默认服务客户端目标 STS 端点 |
服务客户端回退行为 |
备注或更多信息 |
---|---|---|---|---|---|
Amazon CLI v2 | 否 | 不适用 | 区域端点 | 全球终端节点 | |
Amazon CLI v1 | 是 | legacy |
全球终端节点 | 全球终端节点 | |
适用于 C++ 的 SDK | 否 | 不适用 | 区域端点 | us-east-1 (区域) |
|
适用于 Go V2 (1.x) 的 SDK |
否 | 不适用 | 区域端点 | 请求失败 | |
适用于 Go 1.x(V1)的 SDK | 是 | legacy |
全球终端节点 | 全球终端节点 | 要使用共享 config 文件设置,必须开启从配置文件加载的功能;请参阅会话。 |
适用于 Java 2.x 的 SDK | 否 | 不适用 | 区域端点 | 请求失败 |
如果未配置区域,则 |
适用于 Java 1.x 的 SDK | 是 | legacy |
全球终端节点 | 全球终端节点 | |
适用于 JavaScript 3.x 的软件开发工具包 | 否 | 不适用 | 区域端点 | 请求失败 | |
适用于 JavaScript 2.x 的 SDK | 是 | legacy |
全球终端节点 | 全球终端节点 | |
适用于 Kotlin 的 SDK | 否 | 不适用 | 区域端点 | 全球终端节点 | |
适用于.NET 4.x 的 SDK | 否 | 不适用 | 区域端点 | us-east-1 (区域) |
|
适用于 .NET 3.x 的 SDK | 是 | legacy |
全球终端节点 | 全球终端节点 | |
适用于 PHP 3.x 的 SDK | 是 | legacy |
全球终端节点 | 请求失败 | |
适用于 Python (Boto3) 的 SDK |
是 | legacy |
全球终端节点 | 全球终端节点 | |
适用于 Ruby 3.x 的 SDK | 是 | regional |
区域端点 | 请求失败 | |
适用于 Rust 的 SDK | 否 | 不适用 | 区域端点 | 请求失败 | |
适用于 Swift 的 SDK | 否 | 不适用 | 区域端点 | 请求失败 | |
用于 PowerShell | 是 | legacy |
全球终端节点 | 全球终端节点 |