导入密钥材料步骤 4:导入密钥材料 - AWS Key Management Service

导入密钥材料步骤 4:导入密钥材料

加密密钥材料之后,您可以导入密钥材料,以将其与 AWS KMS key 配合使用。要导入密钥材料,请上传在步骤 3:加密密钥材料中加密的密钥材料以及在步骤 2:下载公有密钥和导入令牌中下载的导入令牌。您必须将密钥材料导入您在下载公有密钥和导入令牌时指定的同一 KMS 密钥中。导入密钥材料时,KMS 密钥的密钥状态会更改为 Enabled,您可以在加密操作中使用 KMS 密钥。

当您导入密钥材料时,您可以为密钥材料设置可选的过期日期。当密钥材料过期后,AWS KMS 将删除密钥材料,并且 KMS 密钥将变为不可用。要在加密操作中使用该 KMS 密钥,您必须重新导入相同的密钥材料。导入密钥材料后,无法设置、更改或取消当前导入的到期日期。要更改这些值,您必须删除重新导入相同的密钥材料。

要导入密钥材料,您可以使用 AWS KMS 控制台或 ImportKeyMaterial API。您也可以通过发出 HTTP 请求,或使用 AWS 开发工具包AWS Command Line InterfaceAWS Tools for PowerShell 直接使用 API。

导入密钥材料时,ImportKeyMaterial 条目将添加到您的 AWS CloudTrail 日志中,以记录 ImportKeyMaterial 操作。无论您使用 AWS KMS 控制台还是 AWS KMS API,CloudTrail 条目都是相同的。

导入密钥材料(控制台)

您可以使用 AWS Management Console导入密钥材料。

  1. 如果您位于下载包装密钥和导入令牌页面上,请跳到步骤 8

  2. 登录到 AWS Management Console,然后通过以下网址打开 AWS Key Management Service (AWS KMS) 控制台:https://console.aws.amazon.com/kms

  3. 要更改 AWS 区域,请使用页面右上角的区域选择器。

  4. 在导航窗格中,选择客户托管密钥

  5. 选择已为其下载公有密钥和导入令牌的 KMS 密钥的密钥 ID 或别名。

  6. 选择 Cryptographic configuration(加密配置)选项卡并查看其值。这些选项卡位于 General configuration(常规配置)部分下 KMS 密钥的详细信息页面上。

    只能将密钥材料导入 Key type(密钥类型)为 Symmetric(对称)且 Origin(源)为 EXTERNAL 的 KMS 密钥中。有关创建带已导入密钥材料的 KMS 密钥的信息,请参阅 导入 AWS KMS 密钥中的密钥材料

  7. 选择 Key material(密钥材料)选项卡,然后选择 Upload key material(上传密钥材料)。

    Key material(密钥材料)选项卡仅针对 Key type(密钥类型)为 Symmetric(对称)且 Origin(源)值为 EXTERNAL 的 KMS 密钥显示。

  8. Encrypted key material and import token (已加密的密钥材料和导入令牌) 部分中,在 Wrapped key material (已包装的密钥材料) 下,选择 Choose file (选择文件)。然后上传包含您的已包装(已加密)密钥材料的文件。

  9. Encrypted key material and import token (已加密的密钥材料和导入令牌) 部分中,在 Import token (导入令牌) 下,选择 Choose file (选择文件)。上传包含您已下载的导入令牌的文件。

  10. Expiration option (过期选项) 部分中,确定密钥材料是否过期。要设置到期日期和时间,请选择 Key material expires (密钥材料过期),并使用日历选择日期和时间。您可以指定的日期距当前日期和时间最多 365 天。

  11. 选择 FinishUpload key material

导入密钥材料 (AWS KMS API)

要导入密钥材料,请使用 ImportKeyMaterial 操作。以下示例使用 AWS CLI,但您可以使用受支持的任何编程语言。

要使用此示例,请执行以下操作:

  1. 1234abcd-12ab-34cd-56ef-1234567890ab 替换为您在下载公有密钥和导入令牌时指定的 KMS 密钥的密钥 ID。要标识 KMS 密钥,请使用其密钥 ID密钥 ARN。该操作不能使用别名别名 ARN

  2. EncryptedKeyMaterial.bin 替换为包含加密的密钥材料的文件的名称。

  3. ImportToken.bin 替换为包含导入令牌的文件的名称。

  4. 如果希望导入的密钥材料过期,请将 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-model KEY_MATERIAL_EXPIRES \ --valid-to 2022-09-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-model KEY_MATERIAL_DOES_NOT_EXPIRE