使用 AWS 安全憑證進行程式設計方式存取
建議盡可能使用短期存取金鑰,對 AWS 進行程式設計方式呼叫,或使用 AWS Command Line Interface 或 AWS Tools for PowerShell。不過,也可以將這些長期 AWS 存取金鑰用於這些目的。
當您建立長期存取金鑰時,會將存取金鑰 ID (例如 AKIAIOSFODNN7EXAMPLE) 和私密存取金鑰 (例如 wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY) 建立為一個集合。只有在您建立的時候才可使用私密存取金鑰進行下載。如果您沒有下載私密存取金鑰,或者遺失,則必須重新建立。
在許多情況下,您不需要永遠不會過期的長期存取金鑰 (就像您為 IAM 使用者建立存取金鑰時一樣)。反之,您可以建立 IAM 角色並產生暫時安全憑證。暫時安全憑證包含存取金鑰 ID 和私密存取金鑰,但其中也包含指出憑證何時到期的安全權杖。臨時安全資料過期之後即不再有效。如需詳細資訊,請參閱長期存取金鑰的替代方案
開頭為 AKIA 的存取金鑰 ID 是 IAM 使用者或 AWS 帳戶 根使用者的長期存取金鑰。開頭為 ASIA 的存取金鑰 ID 是使用 AWS STS 操作建立的暫時憑證存取金鑰。
若使用者想要與 AWS 管理主控台 之外的 AWS 互動,則需要程式設計存取權。授予程式設計存取權的方式取決於存取 AWS 的使用者類型。
若要授予使用者程式設計存取權,請選擇下列其中一個選項。
| 哪個使用者需要程式設計存取權? | 到 | 根據 |
|---|---|---|
|
人力資源身分 (IAM Identity Center 中管理的使用者) |
使用臨時憑證簽署對 AWS CLI、AWS SDK 或 AWS API 的程式設計請求。 |
請依照您要使用的介面所提供的指示操作。
|
| IAM | 使用臨時憑證簽署對 AWS CLI、AWS SDK 或 AWS API 的程式設計請求。 | 請遵循《IAM 使用者指南》中使用臨時憑證搭配 AWS 資源中的指示。 |
| IAM | (不建議使用) 使用長期憑證簽署 AWS CLI、AWS SDK 或 AWS API 的程式設計要求。 |
請依照您要使用的介面所提供的指示操作。
|
長期存取金鑰的替代方案
對於許多常見使用案例,有可以替代長期存取金鑰的方案。為了提高帳戶安全性,請考慮以下事項。
-
請勿在應用程式程式碼或程式碼儲存庫中內嵌長期存取金鑰和私密存取金鑰 - 而是使用 AWS Secrets Manager 或其他密碼管理解決方案,因此您不必以純文字形式對金鑰進行硬式編碼。然後,應用程式或用戶端可以在需要時擷取密碼。如需詳細資訊,請參閱《AWS Secrets Manager 使用者指南》中的什麼是 AWS Secrets Manager?。
-
盡可能使用 IAM 角色產生暫時安全憑證 - 務必盡可能使用機制頒發暫時安全憑證,而非長期存取金鑰。暫時安全憑證更加安全,因為它們不會與使用者一起儲存,但會動態產生並在請求時提供給使用者。臨時安全憑證的生命週期有限,因此您不必對其進行管理或更新。提供暫時存取金鑰的機制包含 IAM 角色或 IAM Identity Center 使用者的身分驗證。對於在 AWS 以外執行的機器,您可以使用 AWS Identity and Access Management Roles Anywhere。
-
針對 AWS Command Line Interface (AWS CLI) 或
aws-shell使用長期存取金鑰的替代方案 – 替代方案包含以下內容。-
AWS CloudShell 是以瀏覽器為基礎、預先驗證身分的 Shell,您可以直接從 AWS 管理主控台 啟動。您可以透過偏好的 Shell (Bash、PowerShell 或 Z shell),對 AWS 服務 執行 AWS CLI 命令。當您這樣做時,無需下載或安裝命令列工具。如需詳細資訊,請參閱《AWS CloudShell 使用者指南》中的什麼是 AWS CloudShell?。
-
AWS CLI Version 2 與 AWS IAM Identity Center (IAM Identity Center) 整合。您可以驗證使用者並提供短期憑證來執行 AWS CLI 命令。若要進一步了解,請參閱《AWS IAM Identity Center 使用者指南》中的整合 AWS CLI 與 IAM Identity Center,以及《AWS Command Line Interface 使用者指南》中的設定 AWS CLI 以使用 IAM Identity Center。
-
-
請勿為需要存取應用程式或 AWS 服務 的人類使用者建立長期存取金鑰 – IAM Identity Center 可以產生暫時存取憑證供外部 IdP 使用者存取 AWS 服務。這樣就不需要在 IAM 中建立和管理長期憑證。在 IAM Identity Center 中,建立可授予外部 IdP 使用者存取權的 IAM Identity Center 許可集。然後,將 IAM Identity Center 的群組指派給所選 AWS 帳戶 中的許可集。如需詳細資訊,請參閱《AWS IAM Identity Center 使用者指南》中的 AWS IAM Identity Center 是什麼、連接至外部身分提供者以及許可集。
-
不要將長期存取金鑰存放在 AWS 運算服務中 - 而是將 IAM 角色指派給運算資源。這會自動提供暫時憑證以授予存取權。例如,當建立連接至 Amazon EC2 執行個體的執行個體設定檔時,可以將 AWS 角色指派給執行個體,並使其可用於所有應用程式。執行個體設定檔包含該角色,並且可讓 Amazon EC2 執行個體上執行的程式取得臨時憑證。若要進一步了解,請參閱利用 IAM 角色來授予許可給 Amazon EC2 執行個體上執行的應用程式。