本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Manage (管理) AWS STS 在一個 AWS 區域
區域端點是URL特定區域內的進入點 AWS
網絡服務。 AWS 建議使用區域 AWS Security Token Service (AWS STS) 端點而非全域端點,以減少延遲、建置冗餘並增加工作階段 Token 有效性。雖然全球(遺留) AWS STS 端點具https://sts.amazonaws.com
有高可用性,它託管在一個單一 AWS 區域、美國東部 (維吉尼亞北部) 和其他端點一樣,它不會提供自動容錯移轉至其他區域中的端點。
-
減少延遲 — 通過使您的 AWS STS 呼叫在地理位置上更接近您的服務和應用程式的端點,您可以存取 AWS STS 具有更低延遲和更好的響應時間的服務。
-
內建備援 – 您可以將工作負載內失敗的影響限制為有限數量的元件,且具有可預測的影響限制範圍。使用區域 AWS STS 端點使您可以將組件的範圍與會話令牌的範圍對齊。如需有關此可靠性支柱的詳細資訊,請參閱「使用故障隔離來保護您的工作負載」AWS Well-Architected 的框架。
-
增加會話令牌有效性-來自區域的會話令牌 AWS STS 端點在所有端點中均有效 AWS 區域。 來自全局STS端點的會話令牌僅在 AWS 區域 依預設為啟用。如果您打算為您的帳戶啟用新區域,則可以使用區域中的會話令牌 AWS STS 端點。如果您選擇使用全域端點,則必須變更的區域相容性 AWS STS 全域端點的工作階段權杖。這樣做可以確保令牌在所有有效 AWS 區域.
對於列表 AWS STS 區域及其端點,請參閱AWS STS 區域與端點。
啟用和停用 AWS STS 在一個 AWS 區域
當您啟動區域的STS端點時, AWS STS 可以向您的帳戶中的用戶和角色發出臨時憑據,以使 AWS STS 請求。然後,您就可以在預設啟用或手動啟用的任何區域中使用這些憑證。對於預設啟用的區域,您必須在產生臨時登入資料的帳戶中啟用區域STS端點。提出請求時使用者登入的是相同帳戶或不同帳戶並不重要。針對需手動啟用的區域,您必須在提出請求的帳戶以及產生臨時憑證的帳戶中啟用區域。
例如,假設帳戶 A 中的使用者想要將要sts:AssumeRole
API求傳送至 AWS STS 區域端點https://sts.us-west-2.amazonaws.com
。該請求用於帳戶 B 中名為 Developer
的角色的暫時憑證。由於請求是為帳戶 B 中的實體建立憑證,因此帳戶 B 必須啟用 us-west-2
區域。帳戶 A(或任何其他帳戶)的用戶可以調用 us-west-2
AWS STS 端點,以請求帳戶 B 的憑據,無論該區域是否在其帳戶中激活。
注意
在該帳戶中使用臨時性憑證的每個人都可使用作用中的區域。若要控制哪些使用IAM者或角色可以存取「地區」,請使用權限原則中的aws:RequestedRegion
條件鍵。
若要啟用或停用 AWS STS 在默認情況下啟用的區域(控制台)
對於必須啟用的地區,我們激活 AWS STS 當您啟用「地區」時自動。啟用「地區」後, AWS STS 對於「地區」始終處於作用中狀態,且您無法停用它。若要瞭解如何啟用預設停用的區域,請參閱指定哪些區域 AWS 區域 您的帳戶可以使用 AWS Account Management 參考指南。
撰寫程式碼以使用 AWS STS 區域
激活區域後,您可以直接 AWS STS API呼叫該區域。下面的 Java 代碼片段演示瞭如何配置一個AWSSecurityTokenService
對象向歐洲(米蘭)發出請求(eu-south-1) 地區。
EndpointConfiguration regionEndpointConfig = new EndpointConfiguration("https://sts.eu-south-1.amazonaws.com", "eu-south-1"); AWSSecurityTokenService stsRegionalClient = AWSSecurityTokenServiceClientBuilder.standard() .withCredentials(credentials) .withEndpointConfiguration(regionEndpointConfig) .build();
AWS STS 建議您撥打地區端點的電話。若要瞭解如何手動啟用區域,請參閱指定哪個區域 AWS 區域 您的帳戶可以使用 AWS Account Management 參考指南。
在這個例子中,第一行實例化一個名為URL的EndpointConfiguration
對象regionEndpointConfig
,傳遞端點和 AWS 區域 作為參數。
瞭解如何設定 AWS STS 使用環境變數的區域端點 AWS SDKs,請參閱 AWS STS 中的區域化端點 AWS SDKs和工具參考指南。
如需所有其他語言和程式設計環境的組合,請參閱相關文件SDK
管理全域端點的工作階段權杖
大多數 AWS 區域 針對全部作業啟用 AWS 服務 默認情況下。這些區域會自動啟用,以便搭配使用 AWS STS。 部分地區,例如亞太區域 (香港),必須手動啟用。進一步了解啟用和停用 AWS 區域,請參閱指定 AWS 區域 您的帳戶可以使用 AWS Account Management 參考指南。當您啟用這些 AWS 區域,它們會自動啟動以供搭配使用 AWS STS。 您無法啟動 AWS STS 已停用的區域的端點。會話令牌在所有有效 AWS 區域 包含的字符比在默認啟用的區域中有效的令牌更多。變更此設定可能會影響暫時存放權杖的現有系統。
您可以使用 AWS Management Console, AWS CLI,或 AWS API.
變更全域端點工作階段權杖的區域相容性 (主控台)
-
以 root 使用者或具有執行IAM管理工作權限的使用者身分登入。若要變更工作階段權杖的相容性,您必須擁有允許
iam:SetSecurityTokenServicePreferences
動作的政策。 -
開啟主IAM控台
。在導覽窗格中,選擇帳戶設定。 -
在「安全令牌服務」(STS)部分來自STS端點的「會話令牌」下。Global endpoint (全域端點) 表示
Valid only in AWS 區域 enabled by default
。選擇 Change (變更)。 -
在 [變更區域相容性] 對話方塊中,選取 [全部 AWS 區域。 然後選擇保存更改。
注意
會話令牌在所有有效 AWS 區域 包含的字符比在默認啟用的區域中有效的令牌更多。變更此設定可能會影響暫時存放權杖的現有系統。
若要變更全域端點的工作階段權杖的區域相容性 (AWS CLI)
設定工作階段字符版本。版本 1 令牌僅在 AWS 區域 默認情況下可用。這些權杖不適用於手動啟用的區域,例如亞太區域 (香港)。版本 2 權杖在所有區域都有效。不過,版本 2 權杖包含較多字元且可能會影響暫時存放權杖的系統。
若要變更全域端點的工作階段權杖的區域相容性 (AWS API)
設定工作階段字符版本。版本 1 令牌僅在 AWS 區域 默認情況下可用。這些權杖不適用於手動啟用的區域,例如亞太區域 (香港)。版本 2 權杖在所有區域都有效。不過,版本 2 權杖包含較多字元且可能會影響暫時存放權杖的系統。