AWS STS 区域性端点
注意
如需获得相关帮助,以了解设置页面的布局或解释后面的 AWS SDK 和工具支持表,请参阅了解本指南的设置页面。
AWS Security Token Service(AWS STS)既可作为全局服务提供,也可作为区域性服务提供。某些 AWS SDK 和 CLI 默认使用全局服务端点(https://sts.amazonaws.com),而其他则使用区域性服务端点(https://sts.)。在默认启用的区域中,发往 AWS STS 全局端点的请求会自动在请求发起的同一区域中处理。在选择加入区域中,发往 AWS STS 全局端点的请求由单个 AWS 区域美国东部(弗吉尼亚州北部)处理。有关 AWS STS 端点的更多信息,请参阅《AWS Security Token Service API 参考》中的 Endpoints 或《AWS Identity and Access Management 用户指南》中的管理 AWS 区域中的 AWS STS。{region_identifier}.{partition_domain}
根据 AWS 最佳实践要求,建议尽可能使用区域性端点并配置您的 AWS 区域。非商业分区中的客户必须使用区域性端点。并非所有 SDK 和工具都支持此设置,但对于全局端点和区域性端点,所有 SDK 和工具都有既定的行为。有关更多信息,请参阅以下部分。
注意
AWS 已对默认启用的区域中的 AWS Security Token Service (AWS STS) 全局端点 (https://sts.amazonaws.com) 进行了更改,以增强其恢复能力和性能。发往全局端点的 AWS STS 请求将自动在与您的工作负载相同的 AWS 区域中处理。这些更改不会部署到选择加入的区域。我们建议您使用适当的 AWS STS 区域端点。有关更多信息,请参阅《AWS Identity and Access Management 用户指南》中的 AWS STS 全局端点更改。
对于支持此设置的 SDK 和工具,客户可以使用以下方式来配置该功能:
sts_regional_endpoints- 共享 AWSconfig文件设置AWS_STS_REGIONAL_ENDPOINTS- 环境变量-
此设置指定 SDK 或工具如何确定用于与 AWS Security Token Service (AWS STS) 通信的 AWS 服务 端点。
默认值:
regional,相关例外详见下表。注意
2022 年 7 月之后发布的所有新 SDK 主要版本都将默认为
regional。新的 SDK 主要版本可能会删除此设置并使用regional行为。为了减少此变更对未来的影响,我们建议您尽可能在应用程序中开始使用regional。有效值:(建议的值:
regional)-
legacy:使用全局 AWS STS 端点sts.amazonaws.com。 -
regional– SDK 或工具始终对当前配置的区域使用 AWS STS 端点。例如,如果客户端配置为使用us-west-2,则对 AWS STS 进行的所有调用都针对区域端点sts.us-west-2.amazonaws.com而非全局sts.amazonaws.com端点。要在启用此设置时向全局端点发送请求,您可以将区域设置为aws-global。
在
config文件中设置这些值的示例:[default] sts_regional_endpoints = regionalLinux/macOS 通过命令行设置环境变量的示例:
export AWS_STS_REGIONAL_ENDPOINTS=regionalWindows 通过命令行设置环境变量的示例:
setx AWS_STS_REGIONAL_ENDPOINTS regional -
AWS SDK 和工具支持
注意
根据 AWS 最佳实践要求,建议尽可能使用区域性端点并配置您的 AWS 区域。
下表汇总了 SDK 或工具的下列配置:
-
支持设置:是否支持 STS 区域性端点的共享
config文件变量和环境变量。 -
默认设置值:该设置(如果支持)的默认值。
-
默认服务客户端目标 STS 端点:即使更改默认端点的设置不可用,客户端也会使用的默认端点。
-
服务客户端回退行为:当 SDK 本应使用区域性端点但尚未配置区域时的行为。无论使用区域性端点是属于默认行为,还是因为该设置选择了
regional,都会出现这种行为。
该表还使用了下列值:
-
全局端点:
https://sts.amazonaws.com -
区域性端点:基于应用程序使用的 AWS 区域配置。
-
us-east-1(区域性):使用us-east-1区域性端点,但会话令牌要比典型的全局请求长。
| SDK |
支持设置 |
默认设置值 |
默认服务客户端目标 STS 端点 |
服务客户端回退行为 |
备注或更多信息 |
|---|---|---|---|---|---|
| AWS CLI v2 | 否 | 不适用 | 区域端点 | 全局端点 | |
| AWS 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 的 SDK | 否 | 不适用 | 区域端点 | 请求失败 | |
| 适用于 JavaScript 2.x 的 SDK | 是 | legacy |
全局端点 | 全局端点 | |
| 适用于 Kotlin 的 SDK | 否 | 不适用 | 区域端点 | 全局端点 | |
| 适用于 .NET 4.x 的 SDK | 否 | 不适用 | 区域端点 | us-east-1(区域性) |
|
| 适用于 .NET 3.x 的 SDK | 是 | regional |
全局端点 | 全局端点 | |
| 适用于 PHP 3.x 的 SDK | 是 | regional |
全局端点 | 请求失败 | |
| 适用于 Python (Boto3) 的 SDK |
是 | regional |
全局端点 | 全局端点 | |
| 适用于 Ruby 3.x 的 SDK | 是 | regional |
区域端点 | 请求失败 | |
| 适用于 Rust 的 SDK | 否 | 不适用 | 区域端点 | 请求失败 | |
| 适用于 Swift 的 SDK | 否 | 不适用 | 区域端点 | 请求失败 | |
| Tools for PowerShell V5 | 是 | regional |
全局端点 | 全局端点 | |
| Tools for PowerShell V4 | 是 | regional |
全局端点 | 全局端点 |