

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

# 匯入金鑰的 AWS KMS 金鑰材料
<a name="importing-keys"></a>

您可以使用您提供的金鑰材料來建立 AWS KMS keys (KMS 金鑰）。

KMS 金鑰是資料金鑰的邏輯表示法。KMS 金鑰的中繼資料包含用於執行密碼編譯操作的金鑰材料 ID。根據預設，當您[建立 KMS 金鑰](create-keys.md)時， AWS KMS 會產生該 KMS 金鑰的金鑰材料。但是，您可以建立不含金鑰材料的 KMS 金鑰，然後將您自己的金鑰材料匯入該 KMS 金鑰。這項功能通常稱為「使用自有金鑰 (BYOK)」。

![\[重點標示其所代表之金鑰材料的金鑰圖示。\]](http://docs.aws.amazon.com/zh_tw/kms/latest/developerguide/images/import-key.png)


**注意**  
AWS KMS 不支援解密由 外部對稱加密 KMS AWS KMS 金鑰加密的任何加密文字 AWS KMS，即使加密文字是在具有匯入金鑰材料的 KMS 金鑰下加密。 AWS KMS 不會發佈此任務所需的加密文字格式，而且格式可能會變更，恕不另行通知。

當您使用匯入的金鑰材料時，您仍需對金鑰材料負責，同時 AWS KMS 允許 使用其副本。您可能因為以下一個或多個原因而選擇這樣做：
+ 為證明您採用符合要求的熵來源產生金鑰資料。
+ 將自有基礎設施的金鑰材料與 AWS 服務搭配使用 AWS KMS ，並使用 管理其中該金鑰材料的生命週期 AWS。
+ 在 中使用現有、建立良好的金鑰 AWS KMS，例如用於程式碼簽署、PKI 憑證簽署和憑證鎖定應用程式的金鑰
+ 若要設定 中金鑰材料的過期時間， AWS 並[手動將其刪除](importing-keys-delete-key-material.md)，但也要讓它在未來再次可用。反之，[排程金鑰刪除](deleting-keys.md#deleting-keys-how-it-works)需要等候 7 到 30 天，超過此期間將無法恢復已刪除的 KMS 金鑰。
+ 擁有金鑰材料的原始副本，並在金鑰材料的完整生命週期期間將其保留在 之外 AWS ，以獲得額外的耐用性和災難復原。
+ 對於非對稱金鑰和 HMAC 金鑰，匯入會建立相容且可互通的金鑰，可在 內外操作 AWS。

**支援的 KMS 金鑰類型**

AWS KMS 支援下列 KMS 金鑰類型的匯入金鑰材料。您無法匯入金鑰資料至[自訂金鑰存放區](key-store-overview.md#custom-key-store-overview)的 KMS 金鑰。
+ [對稱加密 KMS 金鑰](symm-asymm-choose-key-spec.md#symmetric-cmks)
+ [非對稱 KMS 金鑰 (ML-DSA 金鑰除外）](symmetric-asymmetric.md)
+ [HMAC KMS 金鑰](hmac.md)
+ 所有支援類型的[多區域金鑰](multi-region-keys-overview.md)。

**區域**

支援的所有 都支援匯入 AWS 區域 的 AWS KMS 金鑰材料。

在中國區域中，對稱加密 KMS 金鑰的金鑰材料需求與其他區域不同。如需詳細資訊，請參閱[步驟 3：加密金鑰材料](importing-keys-encrypt-key-material.md)。

**進一步了解**
+ 若要使用匯入的金鑰材料建立 KMS 金鑰，請參閱 [使用匯入的金鑰材料建立 KMS 金鑰](importing-keys-conceptual.md)。
+ 若要建立警示，以便在 KMS 金鑰中匯入的金鑰材料接近其過期時間時通知您，請參閱 [為匯入金鑰材料過期建立 CloudWatch 警示](imported-key-material-expiration-alarm.md)。
+ 若要將金鑰材料重新匯入 KMS 金鑰，請參閱 [重新匯入金鑰材料](importing-keys-import-key-material.md#reimport-key-material)。
+ 若要將新的金鑰材料匯入 KMS 金鑰以進行隨需輪換，請參閱 [匯入新的金鑰資料](importing-keys-import-key-material.md#import-new-key-material)和 [執行隨需金鑰輪換](rotating-keys-on-demand.md)。
+ 若要使用匯入的金鑰材料來識別和檢視 KMS 金鑰，請參閱 [使用匯入的金鑰材料識別 KMS 金鑰](identify-key-types.md#identify-imported-keys)。
+ 若要了解使用匯入金鑰材料刪除 KMS 金鑰的特殊考量，請參閱 [Deleting KMS keys with imported key material](deleting-keys.md#import-delete-key)。

# 匯入金鑰資料的特殊考量
<a name="importing-keys-considerations"></a>

在您決定將金鑰材料匯入至 之前 AWS KMS，您應該了解匯入金鑰材料的下列特性。

**您可以產生關鍵材料**  
您有責任使用符合您安全要求的隨機來源產生金鑰材料。

**您必須為可用性和耐久性負責**  
AWS KMS 旨在讓匯入的金鑰材料保持高可用性。但 AWS KMS 不會將匯入金鑰材料的耐久性維持在與 AWS KMS 產生的金鑰材料相同的層級。如需詳細資訊，請參閱[保護匯入的金鑰資料](import-keys-protect.md)。

**您可以刪除金鑰材料**  
您可以從 KMS 金鑰中[刪除匯入的金鑰材料](importing-keys-delete-key-material.md)，立即使 KMS 金鑰無法使用。此外，當您將金鑰材料匯入 KMS 金鑰時，您可以決定金鑰是否會過期，並[設定其過期時間](importing-keys-import-key-material.md#importing-keys-expiration)。當過期時間到達時， AWS KMS [會刪除金鑰材料](importing-keys-delete-key-material.md)。如果沒有金鑰材料，即無法在任何密碼編譯操作中使用 KMS 金鑰。若要還原金鑰，您必須將相同的金鑰材料重新匯入至金鑰。

**您無法變更非對稱的金鑰材料和 HMAC 金鑰**  
當您將金鑰材料匯入 KMS 金鑰，KMS 金鑰將永久關聯到該金鑰材料。您可以[重新匯入相同的金鑰材料](importing-keys-import-key-material.md#reimport-key-material)，但您不能將不同的金鑰材料匯入 KMS 金鑰。此外，您無法為具有匯入金鑰材料的任何 KMS 金鑰[啟用自動金鑰輪換](rotate-keys.md)。不過，您可以[手動輪換具有匯入金鑰材料的 KMS 金鑰](rotate-keys-manually.md)。

**您可以在對稱加密金鑰上執行隨需輪換**  
具有匯入金鑰材料的對稱加密金鑰支援隨需輪換。您可以將[多個金鑰材料匯入](importing-keys-import-key-material.md#import-new-key-material)這些金鑰，並使用[隨需輪換](rotating-keys-on-demand.md)來更新目前的金鑰材料。目前的金鑰材料同時用於加密和解密，但其他 （非目前） 金鑰材料只能用於解密。

**您無法變更金鑰資料來源**  
設計用於匯入金鑰材料的 KMS 金鑰具有無法變更的 `EXTERNAL` [來源](create-keys.md#key-origin)值。您無法轉換匯入金鑰材料的 KMS 金鑰，以使用任何其他來源的金鑰材料，包括 AWS KMS。同樣地，您無法將 KMS 金鑰與 AWS KMS 金鑰材料轉換為專為匯入金鑰材料設計的金鑰材料。

**您無法匯出金鑰資料**  
您無法匯出您匯入的任何金鑰材料。 AWS KMS 無法以任何形式將匯入的金鑰材料傳回給您。您必須在 外部保留匯入金鑰材料的副本 AWS，最好是在金鑰管理器中，例如硬體安全模組 (HSM)，以便在刪除金鑰材料或金鑰材料過期時重新匯入金鑰材料。

**您可利用匯入金鑰資料來建立多區域金鑰。**  
具匯入金鑰資料的多區域擁有匯入金鑰資料的 KMS 金鑰功能，且可在 AWS 區域之間互通。若要利用匯入金鑰資料來建立多區域金鑰，您必須匯入相同金鑰資料至主要 KMS 金鑰以及每個複本金鑰。如需匯入多區域金鑰之金鑰資料的詳細資訊，請參閱 [匯入新的金鑰資料](importing-keys-import-key-material.md#import-new-key-material)。

**非對稱金鑰與 HMAC 金鑰為可攜式且可互通**  
您可以在 外部使用您的非對稱金鑰材料和 HMAC 金鑰材料 AWS ，與具有相同匯入金鑰材料的 AWS KMS 金鑰互通。  
與演算法中使用的 KMS 金鑰不可分割繫結的 AWS KMS 對稱加密文字不同， AWS KMS 會使用標準 HMAC 和非對稱格式進行加密、簽署和產生 MAC。因此，這些金鑰為可攜式，並且支援傳統委付金鑰案例。  
當您的 KMS 金鑰已匯入金鑰材料時，您可以使用 外部匯入的金鑰材料 AWS 來執行下列操作。  
+ HMAC 金鑰 — 您可利用匯入金鑰資料來驗證 HMAC KMS 金鑰所產生的 HMAC 標籤。您也可以將 HMAC KMS 金鑰與匯入的金鑰材料搭配使用，以驗證由外部金鑰材料產生的 HMAC 標籤 AWS。
+ 非對稱加密金鑰 — 您可以使用 外部的私有非對稱加密金鑰 AWS ，以對應的公有金鑰解密 KMS 金鑰加密的加密文字。您也可以使用非對稱 KMS 金鑰來解密在 外部產生的非對稱加密文字 AWS。
+ 非對稱簽署金鑰 — 您可以使用非對稱簽署 KMS 金鑰搭配匯入的金鑰材料，來驗證外部私有簽署金鑰所產生的數位簽章 AWS。您也可以使用 外部的非對稱公有簽署金鑰 AWS 來驗證非對稱 KMS 金鑰所產生的簽章。
+ 非對稱金鑰協議金鑰 — 您可以使用非對稱金鑰協議 KMS 金鑰搭配匯入的金鑰材料，以衍生與 外部對等的共用秘密 AWS。
如您匯入相同金鑰資料至位於相同 AWS 區域的不同 KMS 金鑰，則這些金鑰也可互通。若要在不同 中建立可互通的 KMS 金鑰 AWS 區域，請使用匯入的金鑰材料建立多區域金鑰。  

**RSA 私有金鑰**
+ AWS KMS 要求匯入的 RSA 私有金鑰具有符合 [FIPS 186-5 第 A. 1.3](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf) 節所述測試的主要因素。其他軟體或裝置可能會使用不同的演算法來驗證 RSA 私有金鑰的這些主要因素。在極少數情況下，可能無法接受使用其他演算法驗證的金鑰 AWS KMS。

**對稱加密金鑰為不可攜式且不可互通**  
 AWS KMS 產生的對稱加密文字不是可攜式或互通性。 AWS KMS 不會發佈可攜性所需的對稱加密文字格式，而且格式可能會變更，恕不另行通知。  
+ AWS KMS 即使您使用已匯入的金鑰材料 AWS，也無法解密您在 外部加密的對稱加密文字。
+ AWS KMS 不支援解密 AWS KMS 外部的任何對稱加密文字 AWS KMS，即使加密文字是在具有匯入金鑰材料的 KMS 金鑰下加密。
+ 具相同匯入金鑰資料的 KMS 金鑰無法互通。 AWS KMS 產生每個 KMS 金鑰特定加密文字的對稱加密文字。此密文格式可保證僅加密該資料的 KMS 金鑰可解密。
此外，您無法使用 [AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/)或 [Amazon S3 用戶端加密](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html)等任何 AWS 工具來解密 AWS KMS 對稱加密文字。  
因此，您無法將金鑰與匯入的金鑰材料搭配使用，以支援金鑰託管安排，其中具有金鑰材料條件存取的授權第三方可以解密外部的某些加密文字 AWS KMS。若要支援金鑰委付，請使用 [AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/java-example-code.html#java-example-multiple-providers) 在獨立於 AWS KMS的金鑰下將您的訊息加密。

# 保護匯入的金鑰資料
<a name="import-keys-protect"></a>

您匯入的金鑰資料在傳輸過程及靜態狀態都受到保護。在匯入金鑰材料之前，您可以使用在 FIPS 140-3 密碼編譯模組驗證計畫下驗證的 AWS KMS 硬體安全模組 (HSMs) 中產生的 RSA 金鑰對公有金鑰來加密 （或「包裝」) 金鑰材料。 [https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/4884](https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/4884)您可利用包裝公有金鑰直接加密金鑰資料，或利用 AES 對稱金鑰來加密金鑰資料，然後利用 RSA 公有金鑰加密 AES 對稱金鑰。

收到時， 會使用 AWS KMS HSM 中對應的私有金鑰 AWS KMS 來解密金鑰材料，並在僅存在於 HSM 揮發性記憶體中的 AES 對稱金鑰下重新加密。您的金鑰資料永遠不會以純文字形式離開 HSM。它只會在使用中且僅在 AWS KMS HSMs內解密。

與匯入的金鑰資料搭配運用的 KMS 金鑰取決於您在 KMS 金鑰設定的[存取控制政策](control-access.md)。此外，您可利用[別名](kms-alias.md)與[標籤](tagging-keys.md)來識別及[控制 KMS 金鑰的存取權](abac.md)。您可以使用 等服務[來啟用和停用](enabling-keys.md)金鑰、[檢視](viewing-keys.md)和[監控](monitoring-overview.md)金鑰 AWS CloudTrail。

然而，您要維護金鑰資料的唯一故障安全副本。為了獲得此額外控制，您必須負責匯入金鑰材料的耐用性和整體可用性。 AWS KMS 旨在讓匯入金鑰材料保持高可用性。但 AWS KMS 不會將匯入金鑰材料的耐久性維持在與 AWS KMS 產生的金鑰材料相同的層級。

這種持久性差異在以下情況具有意義：
+ 當您[為匯入的金鑰材料設定過期時間](importing-keys-import-key-material.md#importing-keys-expiration)時， 會在金鑰材料過期後 AWS KMS 刪除金鑰材料。 AWS KMS 不會刪除 KMS 金鑰或其中繼資料。您可以[建立 Amazon CloudWatch 警示](imported-key-material-expiration-alarm.md)，在匯入的金鑰資料臨近其到期日期時通知您。

  您無法刪除為 KMS 金鑰 AWS KMS 產生的金鑰材料，也無法將 AWS KMS 金鑰材料設定為過期。
+ 當您[手動刪除匯入的金鑰材料](importing-keys-delete-key-material.md)時， 會 AWS KMS 刪除金鑰材料，但不會刪除 KMS 金鑰或其中繼資料。相反地，[排程金鑰刪除](deleting-keys.md#deleting-keys-how-it-works)需要 7 到 30 天的等待期間，之後會 AWS KMS 永久刪除 KMS 金鑰、其中繼資料及其金鑰材料。
+ 萬一發生影響 AWS KMS （例如總停電） 的特定全區域故障， AWS KMS 無法自動還原您匯入的金鑰材料。不過， AWS KMS 可以還原 KMS 金鑰及其中繼資料。

*您必須*將 外部匯入金鑰材料的副本保留 AWS 在您控制的系統中。建議您將匯入金鑰資料的可匯出複本儲存在金鑰管理系統，例如 HSM。最佳實務是，您應該將 KMS 金鑰 ARN 和 AWS KMS 產生的金鑰材料 ID 的參考與可匯出的金鑰材料複本一起存放。如匯入的金鑰資料遭到刪除或到期，則在您重新匯入相同金鑰資料之前，其關聯的 KMS 金鑰將無法運用。如匯入的金鑰資料永久遺失，則利用 KMS 金鑰加密的任何密文均無法復原。

**重要**  
對稱加密金鑰可以有多個與其相關聯的金鑰材料。一旦您刪除其中一個金鑰資料，或其中一個金鑰資料過期 （除非已刪除或即將過期的金鑰資料為 `PENDING_ROTATION`或 )，整個 KMS 金鑰就會變得無法使用`PENDING_MULTI_REGION_IMPORT_AND_ROTATION`。您必須重新匯入與此類金鑰相關聯的任何過期或刪除的金鑰資料，金鑰才能用於密碼編譯操作。