使用 AWS 安全憑證進行程式化存取 - AWS Identity and Access Management

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

使用 AWS 安全憑證進行程式化存取

我們建議盡可能使用短期存取金鑰以程式設計方式呼叫 AWS 或使用 AWS Command Line Interface . AWS Tools for PowerShell但是,您也可以為這些目的使用長期 AWS 存取金鑰。

當您建立長期存取金鑰時,會將存取金鑰 ID (例如 AKIAIOSFODNN7EXAMPLE) 和私密存取金鑰 (例如 wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY) 建立為一個集合。只有在您建立的時候才可使用私密存取金鑰進行下載。如果您沒有下載私密存取金鑰,或者遺失,則必須重新建立。

在許多情況下,您不需要永不過期的長期存取金鑰 (就像您為IAM使用者建立存取金鑰時所擁有的那樣)。相反地,您可以建立IAM角色並產生臨時安全登入資料。暫時安全憑證包含存取金鑰 ID 和私密存取金鑰,但其中也包含指出憑證何時到期的安全權杖。臨時安全資料過期之後即不再有效。如需詳細資訊,請參閱 長期存取金鑰的替代方案

IDs開頭為的存取金鑰AKIA是IAM使用者或 AWS 帳戶 root 使用者的長期存取金鑰。IDs開頭為的存取金鑰ASIA是您使用 AWS STS 作業建立的暫時認證存取金鑰。

如果使用者想要與 AWS 之外的 AWS Management Console. 授與程式設計存 AWS取權的方式取決於正在存取的使用者類型。

若要授與使用者程式設計存取權,請選擇下列其中一個選項。

哪個使用者需要程式設計存取權? By

人力身分

(在IAM身分識別中心管理的使用者)

使用臨時認證來簽署 AWS CLI、 AWS SDKs或 AWS APIs的程式設計要求。

請依照您要使用的介面所提供的指示操作。

IAM 使用臨時認證來簽署 AWS CLI、 AWS SDKs或 AWS APIs的程式設計要求。 請遵照《使用指南》中的〈搭配資 AWS 源使用臨時登入資料〉中的IAM指
IAM

(不建議使用)

使用長期認證來簽署 AWS CLI、 AWS SDKs或 AWS APIs的程式設計要求。

請依照您要使用的介面所提供的指示操作。

長期存取金鑰的替代方案

對於許多常見使用案例,有可以替代長期存取金鑰的方案。為了提高帳戶安全性,請考慮以下事項。

  • 勿在應用程式程式碼或程式碼儲存庫中內嵌長期存取金鑰和秘密存取金鑰,而是使用 AWS Secrets Manager或其他機密管理解決方案,因此您不必以明文形式對金鑰進行硬式編碼。然後,應用程式或用戶端可以在需要時擷取密碼。如需詳細資訊,請參閱什麼是 AWS Secrets Manager?《AWS Secrets Manager 使用者指南》中。

  • 盡可能使用IAM角色產生臨時安全登入資料 — 盡可能使用機制發出臨時安全登入資料,而非長期存取金鑰。暫時安全憑證更加安全,因為它們不會與使用者一起儲存,但會動態產生並在請求時提供給使用者。臨時安全憑證的生命週期有限,因此您不必對其進行管理或更新。提供臨時存取金鑰的機制包括IAM身分識別中心使用者的IAM角色或驗證。對於在您以外執行的電腦,可 AWS 以使用任何地方的AWS Identity and Access Management 角色

  • 針對 AWS Command Line Interface (AWS CLI) 或 aws-shell 使用長期存取金鑰的替代方案 – 替代方案包含以下內容。

    • AWS CloudShell是一個以瀏覽器為基礎的預先驗證殼層,您可以直接從. AWS Management Console您可以 AWS 服務 通過首選的外殼(Bash,PowerShell 或 Z 外殼)運行 AWS CLI 命令。當您這樣做時,無需下載或安裝命令列工具。如需詳細資訊,請參閱《 AWS CloudShell使用者指南》中的什麼是AWS CloudShell ?

    • AWS CLI 版本 2 與整合 AWS IAM Identity Center (IAM身分識別中心)。您可以驗證使用者並提供短期認證來執行 AWS CLI 命令。若要深入了解,請參閱使用指南中的AWS CLI 與IAM身分識別中心整合使 AWS CLI 用指南中的設定使用IAM身分識別中心。AWS IAM Identity Center AWS Command Line Interface

  • 請勿為需要存取應用程式的人類使用者建立長期存取金鑰,或者 AWS 服務 — I IAM dentity Center 可以產生臨時存取憑證供外部 IdP 使用者存取 AWS 服務。這樣就不需要在中建立和管理長期登入資料IAM。在IAM身分識別中心中,建立可授與外部 IdP 使用者存取權的IAM身分中心權限集。然後將群組從IAM身分識別中心指派給選取的權限集 AWS 帳戶。如需詳細資訊,請參閱《使用指南》中的「什麼是 AWS IAM Identity Center」、「Connect 至您的外部身分識別提供AWS IAM Identity Center 者」和「權限集」。

  • 不要將長期存取金鑰儲存在 AWS 計算服務中,而是將IAM角色指派給計算資源。這會自動提供暫時憑證以授予存取權。例如,當您建立連接到 Amazon 執行個體的執EC2行個體設定檔時,可以將 AWS 角色指派給執行個體,並將其提供給其所有應用程式。執行個體設定檔包含角色,可讓 Amazon EC2 執行個體上執行的程式取得臨時登入資料。若要進一步了解,請參閱使用IAM角色將許可授與在 Amazon EC2 執行個體上執行的應用程式。