使用外部金鑰存放區中的 KMS 金鑰 - AWS Key Management Service

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

使用外部金鑰存放區中的 KMS 金鑰

外部金鑰存放區中建立對稱加密 KMS 金鑰之後,您可以將其用於下列密碼編譯操作:

自訂金鑰存放區支援產生非對稱資料金鑰配對GenerateDataKeyPairGenerateDataKeyPairWithoutPlaintext的對稱加密作業。

在外部金鑰存放區中使用 KMS 金鑰的所有密碼編譯操作都支援加密內容。與往常一樣,使用加密內容是 AWS KMS 建議的安全最佳實務。

在請求中使用 KMS 金鑰時,請按照其金鑰 ID、金鑰 ARN、別名或別名 ARN 來識別 KMS 金鑰。您不需要指定外部金鑰存放區。回應包含為針對任何對稱加密 KMS 金鑰所傳回的相同欄位。不過,當您在外部金鑰存放區中使用 KMS 金鑰時,外部金鑰管理器將使用與 KMS 金鑰關聯的外部金鑰來執行加密和解密操作。

為了確保由外部金鑰存放區中的 KMS 金鑰加密的密文至少與使用標準 KMS 金鑰加密的任何密文一樣安全,AWS KMS 會使用雙重加密。首先在 AWS KMS 中使用 AWS KMS 金鑰材料加密資料。然後,您的外部金鑰管理器會使用 KMS 金鑰的外部金鑰對其進行加密。若要解密雙重加密的密文,您的外部金鑰管理器會先使用 KMS 金鑰的外部金鑰對密文進行解密。然後,在 AWS KMS 中使用 KMS 金鑰的 AWS KMS 金鑰材料對它進行解密。

但必須符合以下條件,才有可能這樣做。

  • KMS 金鑰的金鑰狀態必須是 Enabled。若要尋找金鑰態,請參閱客戶管理金鑰AWS KMS主控台的 [狀態KeyState] 欄位或DescribeKey回應中的欄位。

  • 託管 KMS 金鑰的外部金鑰存放區必須連接至其外部金鑰存放區代理,也就是說,外部金鑰存放區的連接狀態必須為 CONNECTED

    您可以在AWS KMS主控台或DescribeCustomKeyStores回應中的 [外部金鑰存放區] 頁面上檢視連線狀態。外部金鑰存放區的連接狀態也顯示在 AWS KMS 主控台 KMS 金鑰的詳細資訊頁面上。在詳細資訊頁面上,選擇 Cryptographic configuration (密碼編譯組態) 索引標籤,並查看 Custom key store (自訂金鑰存放區) 區段中的 Connection state (連接狀態) 欄位。

    如果連接狀態為 DISCONNECTED,則必須先將其連接。如果連接狀態為 FAILED,則您必須解決問題,中斷連接外部金鑰存放區,然後進行連接。如需說明,請參閱 連接和中斷連接外部金鑰存放區

  • 外部金鑰存放區代理必須能夠找到外部金鑰。

  • 必須啟用外部金鑰,而且必須執行加密和解密。

    外部金鑰的狀態獨立於 KMS 金鑰的金鑰狀態變更,並不受其影響,包括啟用和停用 KMS 金鑰。同樣,停用或刪除外部金鑰不會變更 KMS 金鑰的金鑰狀態,但使用關聯 KMS 金鑰的密碼編譯操作將會失敗。

如果不符合這些條件,密碼編譯操作會失敗,且 AWS KMS 會傳回 KMSInvalidStateException 例外狀況。您可能需要重新連接外部金鑰存放區,或使用外部金鑰管理器工具來重新設定或修復外部金鑰。如需其他說明,請參閱外部金鑰存放區故障診斷

在外部金鑰存放區中使用 KMS 金鑰時,請注意每個外部金鑰存放區中的 KMS 金鑰會針對密碼編譯操作共用自訂金鑰存放區請求配額。如果您超過配額,則 AWS KMS 會傳回 ThrottlingException。如需自訂金鑰存放區配額的詳細資訊,請參閱 自訂金鑰存放區請求配額