本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS 存取金鑰
警告
為避免安全風險,在開發專用軟體或使用真實資料時,請勿使用 IAM 使用者進行身分驗證。相反地,搭配使用聯合功能和身分提供者,例如 AWS IAM Identity Center。
AWS IAM 使用者的存取金鑰可用作您的 AWS 登入資料。 AWS SDK 會自動使用這些 AWS
認證來簽署 API 請求 AWS,以便您的工作負載可以安全方便地存取您的 AWS 資源和資料。建議始終使用,aws_session_token
以便認證是臨時的,並且在過期後不再有效。不建議使用長期認證。
注意
如果 AWS 無法重新整理這些臨時登入資料, AWS 可能會延長認證的有效性,以便您的工作負載不受影響。
共用 AWS credentials
檔案是儲存身分證明資訊的建議位置,因為它安全不在應用程式來源目錄之外,而且與共用config
檔案的 SDK 特定設定分開。
若要進一步了解 AWS 登入資料和使用存取金鑰,請參閱 IAM 使用者指南中的AWS 安全登入資料和管理 IAM 使用者的存取金鑰。
使用下列項目設定此功能:
aws_access_key_id
-共享 AWSconfig
文件設置aws_access_key_id
-共享 AWScredentials
文件設置(推薦方法)AWS_ACCESS_KEY_ID
-環境變量aws.accessKeyId
-JVM 系統屬性:僅限爪哇/科特林-
指定用作認證一部分的 AWS 存取金鑰,以驗證使用者。
aws_secret_access_key
-共享 AWSconfig
文件設置aws_secret_access_key
-共享 AWScredentials
文件設置(推薦方法)AWS_SECRET_ACCESS_KEY
-環境變量aws.secretAccessKey
-JVM 系統屬性:僅限爪哇/科特林-
指定作為認證一部分用來驗證使用者的 AWS 秘密金鑰。
aws_session_token
-共享 AWSconfig
文件設置aws_session_token
-共享 AWScredentials
文件設置(推薦方法)AWS_SESSION_TOKEN
-環境變量aws.sessionToken
-JVM 系統屬性:僅限爪哇/科特林-
指定 AWS 作為認證一部分用來驗證使用者的工作階段權杖。您會收到此值,做為成功要求擔任角色所傳回之暫時認證的一部分。只有當您手動指定臨時的安全憑證時,才需要工作階段字符。不過,我們建議您一律使用臨時安全登入資料,而非長期登入資料。如需安全性建議,請參閱 IAM 中的安全性最佳實務。
如需如何取得這些值的指示,請參閱使用短期憑證進行驗。
在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 開發套件的相容性
下列 SDK 支援本主題中描述的功能和設定。注意到任何部分例外情況。和唯一支援任何 JVM 系統屬 AWS SDK for Java 性設 適用於 Kotlin 的 AWS SDK 定。
SDK | 支援 | 備註或更多資訊 |
---|---|---|
AWS CLI v2 | 是 | |
SDK for C++ | 是 | 不支援共用config 檔案。 |
適用於轉到 V2 的開發套件 (1.x) |
是 | |
適用於 Go 1.x 的開發套件 (V1) | 是 | 若要使用共用config 檔案設定,您必須開啟從設定檔載入功能;請參閱工作階段。 |
適用於 Java 2.x 的開發套件 | 是 | |
適用於 Java 1.x 的開發套件 | 是 | |
適用於 JavaScript 3.x 的開發套 | 是 | |
適用於 JavaScript 2.x 的 SDK | 是 | |
SDK 的科特林 | 是 | |
適用於 .NET 3.x 的開發套 | 是 | 不支援環境變數。 |
適用於 PHP 3.x 的開發套件 | 是 | |
SDK for Python (Boto3) |
是 | |
適用於紅寶石 3.x 的 SDK | 是 | |
適用於鏽蝕的 SDK | 是 | |
適用的工具 PowerShell | 是 | 不支援環境變數。 |