AWS STS 區域端點 - AWS SDKs 和 工具

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS STS 區域端點

AWS Security Token Service (AWS STS) 提供全球和區域服務。有些 AWS SDKs和 依預設CLIs使用全域服務端點 (https://sts.amazonaws.com),有些 則使用區域服務端點 (https://sts.{region_identifier}.{partition_domain})。全域請求對應至美國東部 (維吉尼亞北部) 區域。如需 AWS STS 端點的詳細資訊,請參閱 AWS Security Token Service API參考 中的端點。或者,您也可以在 使用者指南 AWS STS 中的 中學習管理 AWS 區域AWS Identity and Access Management

AWS 最佳實務是盡可能使用區域端點並設定您的 AWS 區域。商業以外分割區中的客戶必須使用區域端點。並非所有 SDKs和 工具都支援此設定,但所有 都已定義全球和區域端點的行為。如需詳細資訊,請參閱下一節。

對於支援此設定的 SDKs和 工具,客戶可以使用下列方式設定 功能:

sts_regional_endpoints - 共用 AWS config檔案設定
AWS_STS_REGIONAL_ENDPOINTS - 環境變數

此設定指定 SDK或 工具如何決定 AWS 服務 用來與 AWS Security Token Service () 交談的端點AWS STS。

預設值legacy

注意

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 = regional

透過命令列設定環境變數的 Linux/macOS 範例:

export AWS_STS_REGIONAL_ENDPOINTS=regional

透過命令列設定環境變數的 Windows 範例:

setx AWS_STS_REGIONAL_ENDPOINTS regional

與 的相容性 AWS SDKs

注意

AWS 最佳實務是盡可能使用區域端點並設定您的 AWS 區域

以下資料表摘要說明 SDK或 工具:

  • 支援設定 :是否支援STS區域端點的共用config檔案變數和環境變數。

  • 預設設定值 :如果支援,則設定的預設值。

  • 預設服務用戶端目標STS端點 :用戶端使用什麼預設端點,即使無法進行變更設定。

  • 服務用戶端退避行為 :當 應該使用區域端點,但未設定區域時, 會SDK做什麼。這是行為,無論其是否因為預設或 設定regional已選取,而使用區域端點。

資料表也會使用下列值:

  • 全域端點:https://sts.amazonaws.com

  • 區域端點 :根據您應用程式AWS 區域所使用的設定。

  • us-east-1 (區域):使用us-east-1區域端點,但具有比一般全域請求更長的工作階段權杖。

SDK

支援設定

預設設定值

預設服務用戶端目標STS端點

服務用戶端退信行為

備註或更多資訊
AWS CLI v2 N/A 區域 (Region) 端點 全域端點
AWS CLI v1 legacy 全域端點 全域端點
SDK 適用於 C++ N/A 區域 (Region) 端點 us-east-1 (區域)
SDK for Go V2 (1.x) N/A 區域 (Region) 端點 請求失敗
SDK for Go 1.x (V1) legacy 全域端點 全域端點 若要使用共用config檔案設定,您必須開啟從組態檔案載入;請參閱工作階段
SDK 適用於 Java 2.x N/A 區域 (Region) 端點 請求失敗

如果未設定區域, AssumeRoleAssumeRoleWithWebIdentity將使用全域STS端點

SDK 適用於 Java 1.x legacy 全域端點 全域端點
SDK 適用於 JavaScript 3.x N/A 區域 (Region) 端點 請求失敗
SDK 適用於 JavaScript 2.x legacy 全域端點 全域端點
SDK 適用於 Kotlin N/A 區域 (Region) 端點 全域端點
SDK 適用於 。NET 3.x legacy 全域端點 全域端點
SDK 適用於 PHP 3.x legacy 全域端點 請求失敗
SDK for Python (Boto3) legacy 全域端點 全域端點
SDK 適用於 Ruby 3.x regional 區域 (Region) 端點 請求失敗
SDK for Rust N/A 區域 (Region) 端點 請求失敗
SDK 適用於 Swift N/A 區域 (Region) 端點 請求失敗
適用於 的工具 PowerShell legacy 全域端點 全域端點