變更密碼的加密金鑰 AWS Secrets Manager - AWS Secrets Manager

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

變更密碼的加密金鑰 AWS Secrets Manager

Secrets Manager 使用包絡加密與 AWS KMS 金鑰和資料金鑰來保護每個密碼值。對於每個秘密,您可以選擇要使用的 KMS 金鑰。您可以使用 AWS 受管金鑰 aws/秘密管理器,也可以使用客戶管理的密鑰。在大多數情況下,我們建議使用 aws/secretsmanager,使用這個無需付費。如果您需要從其他人存取密碼 AWS 帳戶,或者想要使用自己的 KMS 金鑰,以便輪換或套用金鑰原則,請使用 客戶受管金鑰. 您必須擁有KMS 金鑰的許可。如需有關使用客戶受管金鑰的成本的資訊,請參閱 定價

您可以變更秘密的加密金鑰。例如,如果您想要從其他帳戶存取密碼,而該密碼目前已使用 AWS 受管理金鑰加密aws/secretsmanager,您可以切換到 客戶受管金鑰.

提示

如果您想要旋轉 客戶受管金鑰,我們建議您使用 AWS KMS 自動按鍵旋轉。如需詳細資訊,請參閱旋轉 AWS KMS 按鍵

當您變更加密金鑰時,Secrets Manager 會使用新金鑰重新加密AWSCURRENTAWSPREVIOUS版本。AWSPENDING為了避免將您鎖定在密碼之外,Secrets Manager 會使用先前的金鑰加密所有現有版本。這表示您可以使用先前的金鑰或新金鑰來解密AWSCURRENTAWSPENDING、和AWSPREVIOUS版本。

為了使其只AWSCURRENT能通過新的加密密鑰進行解密,請使用新密鑰創建一個新版本的密鑰。然後,為了能夠解密密鑰版本,您必須具有新密鑰的權限。AWSCURRENT

如果停用先前的加密金鑰,則除了 AWSCURRENTAWSPENDINGAWSPREVIOUS 之外,您將無法解密任何秘密版本。如果您有其他要保留存取的標記秘密版本,則需要使用 AWS CLI,以新的加密金鑰重新建立這些版本。

若要變更秘密的加密金鑰 (主控台)
  1. https://console.aws.amazon.com/secretsmanager/ 開啟 Secrets Manager 主控台。

  2. 從秘密清單中選擇秘密。

  3. 在秘密詳細資訊頁面上,在秘密詳細資訊區段中,選擇動作,然後選擇編輯加密金鑰

AWS CLI

如果您變更秘密的加密金鑰,然後停用先前的加密金鑰,則除了 AWSCURRENTAWSPENDINGAWSPREVIOUS 之外,您將無法解密任何秘密版本。如果您有其他要保留存取的標記秘密版本,則需要使用 AWS CLI,以新的加密金鑰重新建立這些版本。

若要變更秘密的加密金鑰 (AWS CLI)
  1. 下列 update-secret 範例會更新用於加密機密值的 KMS 金鑰。KMS 金鑰必須位於與機密相同的區域。

    aws secretsmanager update-secret \ --secret-id MyTestSecret \ --kms-key-id arn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
  2. (選擇性) 如果您有具有自訂標籤的秘密版本,若要使用新金鑰重新加密,則您必須重新建立這些版本。

    在命令 shell 中輸入命令時,存在命令歷史記錄被存取或公用程式存取命令參數的風險。請參閱降低使用 AWS CLI 來存放 AWS Secrets Manager 秘密的風險

    1. 取得秘密版本的值。

      aws secretsmanager get-secret-value \ --secret-id MyTestSecret \ --version-stage MyCustomLabel

      記下秘密值。

    2. 使用該值建立新版本。

      aws secretsmanager put-secret-value \ --secret-id testDescriptionUpdate \ --secret-string "SecretValue" \ --version-stages "MyCustomLabel"