本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
步驟 4:匯入金鑰材料
加密您的金鑰材料之後,您可以匯入金鑰材料以便搭配使用 AWS KMS key。若要匯入金鑰材料,請上傳在步驟 3:加密金鑰材料加密的金鑰材料,以及在步驟 2:下載包裝公有金鑰及匯入字符下載的匯入符記。您必須將金鑰材料匯入至您在下載公有金鑰和匯入字符時指定的同一個 KMS 金鑰。在成功匯入金鑰資料之後,KMS 金鑰的金鑰狀態會變為 Enabled
,這表示您可在密碼編譯操作使用 KMS 金鑰。
在匯入金鑰材料時,您可以為金鑰材料設定可選的過期時間。當金鑰材料過期時, AWS KMS 會刪除金鑰材料,讓 KMS 金鑰變成不可用。匯入金鑰材料後,您無法設定、變更或取消目前匯入材料的過期日期。若要變更這些值,您必須重新匯入相同的金鑰材料。
對於具有EXTERNAL
原始伺服器的所有 KMS 金鑰,匯入其中的第一個金鑰材料會成為最新版本,並永久與其相關聯。具有EXTERNAL
原始伺服器的單一區域對稱加密金鑰支援隨需輪換。您可以將多個金鑰材料與支援隨需輪換的匯入金鑰建立關聯。您必須使用 ImportKeyMaterial 動作NEW_KEY_MATERIAL
將 importType
參數設定為 ,以將新的金鑰材料與 KMS 金鑰建立關聯。在您執行 RotateKeyOnDemand 動作之前,此金鑰材料不會永久與金鑰相關聯。在此之前,此金鑰材料處於 PENDING_ROTATION
狀態。選用ImportType
參數的預設值為 EXISTING_KEY_MATERIAL
。當您省略 ImportType
參數或將其指定為 時EXISTING_KEY_MATERIAL
,您必須匯入先前與 KMS 金鑰相關聯的金鑰材料。
對於具有EXTERNAL
原始伺服器的非對稱、HMAC 或多區域 KMS 金鑰,只能有一個金鑰材料與金鑰相關聯。 AWS KMS 會使用 ImportType
參數拒絕 ImportKeyMaterial API 請求。
匯入與 KMS 金鑰永久相關聯的所有金鑰材料時,KMS 金鑰可用於密碼編譯操作。如果這些金鑰材料中的任何一種遭到刪除或允許過期,KMS 金鑰狀態會變更為 ,PendingImport
且金鑰不適用於密碼編譯操作。
若要匯入金鑰材料,您可以使用 AWS KMS 主控台或 ImportKeyMaterial API。您可以透過提出 HTTP 請求,或透過使用 AWS 開發套件
當您匯入金鑰材料時,會將 ImportKeyMaterial 項目新增至您的 AWS CloudTrail 日誌,以記錄ImportKeyMaterial
操作。無論您使用 AWS KMS 主控台或 AWS KMS API,CloudTrail 項目都相同。
設定到期時間 (選用)
匯入 KMS 金鑰的金鑰材料時,可以為金鑰材料設定選用的到期日期和時間,從匯入日期算起最多 365 天。當匯入的金鑰材料過期時, 會將其 AWS KMS 刪除。此動作會將 KMS 金鑰的金鑰狀態變更為 PendingImport
,這會防止在任何密碼編譯操作中對其進行使用。若要使用 KMS 金鑰,您必須重新匯入原始金鑰材料的複本。
確保匯入的金鑰材料頻繁地到期,可協助您滿足法規要求,但這會對使用 KMS 金鑰加密的資料帶來額外的風險。在您重新匯入原始金鑰材料的複本之前,包含過期金鑰材料的 KMS 金鑰將無法使用,而且使用該 KMS 金鑰進行加密的任何資料都無法存取。如果您因任何原因而無法重新匯入金鑰材料,包括遺失原始金鑰材料的複本,則該 KMS 金鑰將永久無法使用,而且使用該 KMS 金鑰進行加密的資料將無法復原。
若要降低此風險,請確定您可以存取匯入金鑰材料的副本,並設計系統在金鑰材料過期和中斷 AWS 工作負載之前刪除和重新匯入金鑰材料。建議您為已匯入的金鑰材料到期設定一個警示,讓您有足夠的時間在金鑰材料到期前重新匯入。您也可以使用 CloudTrail 日誌來稽核匯入 (含重新匯入) 金鑰材料和刪除已匯入的金鑰材料的操作,以及刪除過期金鑰材料的 AWS KMS 操作。
AWS KMS 無法還原、復原或重現已刪除的金鑰材料。您可以透過程式設計方式定期刪除和重新匯入已匯入的金鑰材料,而不是設定到期時間,但是保留原始金鑰材料複本的要求是相同的。
您可以在匯入金鑰材料時確定金鑰材料是否有到期時間以及何時到期。不過,您可以開啟和關閉過期,或透過重新匯入金鑰材料來設定新的過期時間。使用 ImportKeyMaterial 的 ExpirationModel
參數來開啟 (KEY_MATERIAL_EXPIRES
) 和關閉 (KEY_MATERIAL_DOES_NOT_EXPIRE
) 到期時間,以及使用 ValidTo
參數來設定何時到期。最長時間為匯入資料後 365 天;沒有最低限度,但時間必須為將來的時間。
設定金鑰材料描述
具有EXTERNAL
原始伺服器的單一區域對稱加密金鑰可以有多個與其相關聯的金鑰材料。您可以在將金鑰材料匯入此類金鑰時指定選用的金鑰材料描述。描述可用來追蹤在外部長期維護對應金鑰材料的位置 AWS KMS。
重新匯入金鑰材料
如果您管理的 KMS 金鑰含有已匯入的金鑰資料,您可能需要重新匯入金鑰資料。您可能重新匯入金鑰材料來取代即將過期或已刪除的金鑰材料,或變更金鑰材料的過期模型或過期日期。
您可以根據自己的安全性需求來排程或隨時重新匯入金鑰材料。不必等到金鑰材料到期或接近到期時間。
重新匯入金鑰材料的程序與您第一次用來匯入金鑰材料的程序相同,但有下列例外。
-
使用現有的 KMS 金鑰,而不是建立新的 KMS 金鑰。您可以略過匯入程序的步驟 1。
-
重新匯入金鑰資料時,您可以變更過期模型和過期日期。
每次將金鑰材料匯入 KMS 金鑰時,您需要為 KMS 金鑰下載並使用新的包裝金鑰和匯入字符。包裝程序不會影響金鑰資料內容,因此您可採用不同包裝公有金鑰和不同包裝演算法來匯入相同金鑰資料。
匯入新的金鑰材料
若要在具有匯入金鑰材料的對稱加密 KMS 金鑰上執行隨需輪換,您必須先匯入新的金鑰材料,先前不會與金鑰相關聯。使用 ImportKeyMaterial 操作,並將 ImportType
參數設定為 NEW_KEY_MATERIAL
來完成此任務。以這種方式匯入的金鑰材料將處於 PENDING_ROTATION
狀態,直到您執行 RotateKeyOnDemand 操作或在 中輪換金鑰為止 AWS Management Console。KMS 金鑰隨時最多可有一個處於 PENDING_ROTATION
狀態的金鑰材料。
匯入金鑰材料 (主控台)
您可以使用 AWS Management Console 匯入金鑰材料。
-
如您在 Upload your wrapped key material (上傳包裝的金鑰資料) 頁面,請跳至 步驟 8。
-
登入 AWS Management Console 並開啟位於 https://https://console.aws.amazon.com/kms
的 AWS Key Management Service (AWS KMS) 主控台。 -
若要變更 AWS 區域,請使用頁面右上角的區域選擇器。
-
在導覽窗格中,選擇 Customer managed keys (客戶受管金鑰)。
-
針對您已下載公開金鑰和匯入字符的 KMS 金鑰,選擇其金鑰 ID 或別名。
-
選擇 Cryptographic configuration (密碼編譯組態) 索引標籤並檢視其值。這些索引標籤位於 General configuration (一般組態) 區段下 KMS 金鑰的詳細資訊頁面上。
您僅能將金鑰資料匯入 Origin (來源) 是 EXTERNAL (外部 (匯入金鑰材料)) 的 KMS 金鑰。如需有關建立具有匯入金鑰材料之 KMS 金鑰的資訊,請參閱 匯入金鑰的 AWS KMS 金鑰材料。
-
對於非對稱、HMAC 和多區域金鑰,請選擇金鑰材料索引標籤,然後選擇匯入金鑰材料。對於單一區域對稱加密金鑰,請選擇金鑰材料和輪換索引標籤。然後,選擇匯入初始金鑰材料或匯入新金鑰材料或重新匯入金鑰材料。重新匯入金鑰材料選項可在金鑰材料資料表的
Actions
功能表中使用。如您已下載金鑰資料、匯入字符並加密金鑰資料,請選擇 Next (下一步)。
-
在 Encrypted key material and import token (加密金鑰資料與匯入字符) 區段,執行下列動作。
-
在 Wrapped key material (包裝的金鑰資料),選擇 Choose file (選擇檔案)。然後,上傳內含包裝 (加密) 金鑰資料的檔案。
-
在 Import token (匯入字符),選擇 Choose file (上傳檔案)。上傳內含您下載之匯入符記的檔案。
-
-
在 Expiration option (過期選項) 區段中,您可以決定金鑰材料是否會過期。若要設定過期日期和時間,請選擇 Key material expires (金鑰資料過期),然後使用行事曆選取日期和時間。您可以指定自目前日期和時間起的日期,但最長不超過 365 天。
-
對於對稱加密金鑰,您可以選擇指定要匯入之金鑰資料的描述。
-
選擇匯入金鑰材料。
匯入金鑰材料 (AWS KMS API)
若要匯入金鑰材料,請使用 ImportKeyMaterial 操作。以下範例使用 AWS CLI
若要使用此範例:
-
將
取代為您在下載公有金鑰和匯入字符時指定的 KMS 金鑰的金鑰 ID。若要識別 KMS 金鑰,請使用它的金鑰 ID 或金鑰 ARN。不能對此操作使用別名或別名 ARN。1234abcd-12ab-34cd-56ef-1234567890ab
-
將
取代為包含加密金鑰材料的檔案名稱。EncryptedKeyMaterial.bin
-
將
取代為包含匯入符記的檔案名稱。ImportToken.bin
-
如果希望匯入的金鑰材料過期,請將
expiration-model
參數設定為其預設值KEY_MATERIAL_EXPIRES
,或省略expiration-model
參數。然後,將valid-to
參數的值取代為您希望金鑰材料到期的日期和時間。日期和時間最多可以是自提出請求之日起的 365 天內。$
aws kms import-key-material --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --encrypted-key-material fileb://EncryptedKeyMaterial.bin
\ --import-token fileb://ImportToken.bin
\ --expiration-modelKEY_MATERIAL_EXPIRES
\ --valid-to2023-06-17T12:00:00-08:00
如果不希望匯入的金鑰材料過期,請將
expiration-model
參數的值設定為KEY_MATERIAL_DOES_NOT_EXPIRE
,並省略命令中的valid-to
參數。$
aws kms import-key-material --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --encrypted-key-material fileb://EncryptedKeyMaterial.bin
\ --import-token fileb://ImportToken.bin
\ --expiration-modelKEY_MATERIAL_DOES_NOT_EXPIRE
-
如果您想要匯入新的金鑰材料,但先前未與 KMS 金鑰相關聯,請將
ImportType
參數設定為NEW_KEY_MATERIAL
。此選項只能與單一區域對稱加密金鑰搭配使用。對於這些金鑰,您也可以在下列命令列範例中,使用選用KeyMaterialDescription
參數來設定匯入金鑰資料的描述:$
aws kms import-key-material --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --encrypted-key-material fileb://EncryptedKeyMaterial.bin
\ --import-token fileb://ImportToken.bin
\ --expiration-modelKEY_MATERIAL_EXPIRES
\ --valid-to2023-06-17T12:00:00-08:00
\ --import-type NEW_KEY_MATERIAL \ --key-material-description"Q2 2025 Rotation"
提示
如果命令未成功,您可能看到 KMSInvalidStateException
或 NotFoundException
。您可重試請求。