本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS 存取金鑰
警告
為避免安全風險,在開發專用軟體或使用真實資料時,請勿使用 IAM 使用者進行身分驗證。相反地,搭配使用聯合功能和身分提供者,例如 AWS IAM Identity Center。
AWS IAM 使用者的存取金鑰可以用作您的 AWS 登入資料。軟體 AWS 開發套件會自動使用這些 AWS 登入資料來簽署 API 請求 AWS,讓您的工作負載能夠安全方便地存取您的 AWS 資源和資料。建議您一律使用 ,aws_session_token
讓憑證暫時且過期後不再有效。不建議使用長期登入資料。
注意
如果 AWS 無法重新整理這些臨時登入資料, AWS 可能會延長登入資料的有效性,讓您的工作負載不會受到影響。
共用 AWS credentials
檔案是存放登入資料資訊的建議位置,因為它是在應用程式來源目錄外,並與共用config
檔案的 SDK 特定設定分開。
若要進一步了解 AWS 登入資料和使用存取金鑰,請參閱《IAM 使用者指南》中的AWS 安全登入資料和管理 IAM 使用者的存取金鑰。 https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html
使用下列設定此功能:
aws_access_key_id
- 共用 AWSconfig
檔案設定aws_access_key_id
- 共用 AWScredentials
檔案設定 (建議的方法)AWS_ACCESS_KEY_ID
- 環境變數aws.accessKeyId
- JVM 系統屬性:僅限 Java/Kotlin-
指定做為登入資料一部分以驗證使用者的 AWS 存取金鑰。
aws_secret_access_key
- 共用 AWSconfig
檔案設定aws_secret_access_key
- 共用 AWScredentials
檔案設定 (建議的方法)AWS_SECRET_ACCESS_KEY
- 環境變數aws.secretAccessKey
- JVM 系統屬性:僅限 Java/Kotlin-
指定做為登入資料一部分用來驗證使用者的 AWS 私密金鑰。
aws_session_token
- 共用 AWSconfig
檔案設定aws_session_token
- 共用 AWScredentials
檔案設定 (建議的方法)AWS_SESSION_TOKEN
- 環境變數aws.sessionToken
- JVM 系統屬性:僅限 Java/Kotlin-
指定 AWS 工作階段字符,做為驗證使用者憑證的一部分。您會收到此值,做為成功請求所傳回暫時登入資料的一部分,以擔任角色。只有當您手動指定臨時的安全憑證時,才需要工作階段字符。不過,我們建議您一律使用臨時安全登入資料,而非長期登入資料。如需安全建議,請參閱 IAM 中的安全最佳實務。
如需如何取得這些值的說明,請參閱 使用短期憑證來驗證 AWS SDKs和工具。
在 config
或 credentials
檔案中設定這些必要值的範例:
[default] aws_access_key_id =
AKIAIOSFODNN7EXAMPLE
aws_secret_access_key =wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
aws_session_token =AQoEXAMPLEH4aoAH0gNCAPy...truncated...zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
透過命令列設定環境變數的 Linux/macOS 範例:
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_SESSION_TOKEN=AQoEXAMPLEH4aoAH0gNCAPy...truncated...zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
透過命令列設定環境變數的 Windows 範例:
setx AWS_ACCESS_KEY_ID
AKIAIOSFODNN7EXAMPLE
setx AWS_SECRET_ACCESS_KEYwJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
setx AWS_SESSION_TOKENAQoEXAMPLEH4aoAH0gNCAPy...truncated...zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
支援 AWS SDKs和工具
下列 SDKs 支援本主題中所述的功能和設定。會記下任何部分例外狀況。 AWS SDK for Java 和 適用於 Kotlin 的 AWS SDK 僅支援任何 JVM 系統屬性設定。
SDK | 支援 | 備註或更多資訊 |
---|---|---|
AWS CLI v2 | 是 | |
適用於 C++ 的 SDK | 是 | 不支援共用config 檔案。 |
SDK for Go V2 (1.x) |
是 | |
適用於 Go 1.x (V1) 的 SDK | 是 | 若要使用共用config 檔案設定,您必須開啟從組態檔案載入;請參閱工作階段。 |
適用於 Java 的 SDK 2.x | 是 | |
適用於 Java 的 SDK 1.x | 是 | |
適用於 JavaScript 3.x 的 SDK | 是 | |
適用於 JavaScript 2.x 的 SDK | 是 | |
適用於 Kotlin 的 SDK | 是 | |
適用於 .NET 3.x 的 SDK | 是 | 不支援環境變數。 |
適用於 PHP 3.x 的 SDK | 是 | |
適用於 Python 的 SDK (Boto3) |
是 | |
適用於 Ruby 的 SDK 3.x | 是 | |
適用於 Rust 的 SDK | 是 | |
適用於 Swift 的 SDK | 是 | |
PowerShell 的工具 | 是 | 不支援環境變數。 |