容器憑證提供者 - AWS SDKs和工具

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

容器憑證提供者

注意

如需了解設定頁面配置或解譯 Support AWS SDKs和後續工具資料表的說明,請參閱 了解本指南的設定頁面

容器憑證提供者會為客戶的容器化應用程式擷取憑證。此登入資料提供者對於 Amazon Elastic Container Service (Amazon ECS) 和 Amazon Elastic Kubernetes Service (Amazon EKS) 客戶很有用。SDKs會嘗試透過 GET 請求從指定的 HTTP 端點載入登入資料。

如果您使用 Amazon ECS,我們建議您使用任務 IAM 角色來改善登入資料隔離、授權和可稽核性。設定後,Amazon ECS 會設定軟體SDKs和工具用來取得憑證AWS_CONTAINER_CREDENTIALS_RELATIVE_URI的環境變數。若要為此功能設定 Amazon ECS,請參閱《Amazon Elastic Container Service 開發人員指南》中的任務 IAM 角色

如果您使用 Amazon EKS,我們建議您使用 Amazon EKS Pod Identity 來改善登入資料隔離、最低權限、可稽核性、獨立操作、可重複使用性和可擴展性。您的 Pod 和 IAM 角色都與 Kubernetes 服務帳戶相關聯,以管理應用程式的登入資料。若要進一步了解 Amazon EKS Pod Identity,請參閱《Amazon EKS 使用者指南》中的 Amazon EKS Pod Identity設定後,Amazon EKS 會設定SDKsAWS_CONTAINER_CREDENTIALS_FULL_URI和工具用來取得憑證的 和 AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE環境變數。如需設定資訊,請參閱 Amazon EKS 使用者指南中的設定 Amazon EKS Pod Identity AgentAmazon EKS Pod Identity 可簡化部落格網站上的 Amazon EKS 叢集應用程式 IAM 許可 AWS

使用下列設定此功能:

AWS_CONTAINER_CREDENTIALS_FULL_URI - 環境變數

指定 SDK 在請求登入資料時要使用的完整 HTTP URL 端點。這包括 配置和 主機。

預設值:無。

有效值:有效 URI。

注意:此設定是 的替代方案AWS_CONTAINER_CREDENTIALS_RELATIVE_URI,只有在AWS_CONTAINER_CREDENTIALS_RELATIVE_URI未設定 時才會使用。

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

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost/get-credentials

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost:8080/get-credentials
AWS_CONTAINER_CREDENTIALS_RELATIVE_URI - 環境變數

指定 SDK 在請求登入資料時要使用的相對 HTTP URL 端點。該值會附加到 的預設 Amazon ECS 主機名稱169.254.170.2

預設值:無。

有效值:有效的相對 URI。

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

export AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=/get-credentials?a=1
AWS_CONTAINER_AUTHORIZATION_TOKEN - 環境變數

以純文字指定授權字符。如果設定此變數,軟體開發套件會在 HTTP 請求上設定授權標頭,並具有環境變數的值。

預設值:無。

有效值:字串。

注意:此設定是 的替代方案AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE,只有在AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE未設定 時才會使用。

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

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost/get-credential export AWS_CONTAINER_AUTHORIZATION_TOKEN=Basic abcd
AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE - 環境變數

指定檔案的絕對檔案路徑,其中包含純文字的授權字符。

預設值:無。

有效值:字串。

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

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost/get-credential export AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE=/path/to/token

支援 AWS SDKs和工具

下列 SDKs 支援本主題中所述的功能和設定。會記下任何部分例外狀況。 AWS SDK for Java 和 適用於 Kotlin 的 AWS SDK 僅支援任何 JVM 系統屬性設定。

SDK 支援 備註或更多資訊
AWS CLI v2
適用於 C++ 的 SDK
SDK for Go V2 (1.x)
適用於 Go 的 SDK 1.x (V1)
適用於 Java 的 SDK 2.x Lambda SnapStart 啟用時, AWS_CONTAINER_CREDENTIALS_FULL_URI AWS_CONTAINER_AUTHORIZATION_TOKEN 會自動用於身分驗證。
適用於 Java 的 SDK 1.x Lambda SnapStart 啟用時, AWS_CONTAINER_CREDENTIALS_FULL_URI AWS_CONTAINER_AUTHORIZATION_TOKEN 會自動用於身分驗證。
適用於 JavaScript 3.x 的 SDK
適用於 JavaScript 2.x 的 SDK
適用於 Kotlin 的 SDK
適用於 .NET 3.x 的 SDK Lambda SnapStart 啟用時, AWS_CONTAINER_AUTHORIZATION_TOKEN AWS_CONTAINER_CREDENTIALS_FULL_URI會自動用於身分驗證。
適用於 PHP 3.x 的 SDK
適用於 Python 的 SDK (Boto3) Lambda SnapStart 啟用時, AWS_CONTAINER_CREDENTIALS_FULL_URI AWS_CONTAINER_AUTHORIZATION_TOKEN 會自動用於身分驗證。
適用於 Ruby 的 SDK 3.x
適用於 Rust 的 SDK
適用於 Swift 的 SDK
PowerShell 的工具