本文为您介绍如何使用托管密码机创建并使用密钥。

前提条件

进行操作前,请确保您已经注册了阿里云账号。如还未注册,请先完成账号注册

背景信息

您需要在当前已经支持的地域使用托管密码机。支持的地域详情,请参见支持的地域

通过密钥管理服务控制台创建密钥

  1. 登录密钥管理服务控制台
  2. 密钥列表中,单击创建密钥
  3. 在弹出的创建密钥对话框,填写别名
  4. 保护级别列表中,选择HSM
  5. 填写描述后,单击确认
    创建完成后,在密钥详情密钥列表页均可以查看到密钥的保护级别

通过阿里云CLI创建密钥

  1. 在阿里云CLI中,输入以下命令。
    aliyun kms CreateKey --ProtectionLevel HSM --Description "Key1 in Managed HSM"
  2. 调用DescribeKey接口,查看密钥的保护级别。
    {
      "KeyMetadata": {
        "CreationDate": "2019-07-04T13:14:15Z",
        "Description": "Key1 in Managed HSM",
        "KeyId": "1234abcd-12ab-34cd-56ef-12345678****",
        "KeyState": "Enabled",
        "KeyUsage": "ENCRYPT/DECRYPT",
        "DeleteDate": "",
        "Creator": "111122223333",
        "Arn": "acs:kms:cn-hongkong:111122223333:key/1234abcd-12ab-34cd-56ef-12345678****",
        "Origin": "Aliyun_KMS",
        "MaterialExpireTime": "",
        "ProtectionLevel": "HSM"
      },
      "RequestId": "8eaeaa8b-4491-4f1e-a51e-f95a4e54620c"
    }

将外部密钥导入托管密码机

如果您需要将自建密钥基础设施中的密钥导入到托管密码机中,您只需要在创建外部密钥时,指定保护级别HSM。创建外部密钥操作详情,请参见导入密钥材料

将外部密钥导入托管密码机时,阿里云会进行如下操作:
  • 当您调用GetParametersForImport接口时:阿里云将根据您指定的保护级别HSM,在托管密码机中生成一个用于导入外部密钥的密钥对,并把密钥对的公钥返回给您。
  • 当您调用ImportKeyMaterial接口时:阿里云将加密的外部密钥材料导入到托管密码机的内部,并通过HSM的密钥反打包(Unwrap)机制获取密钥材料本身,而导入的密钥材料明文不能被任何人导出。

管理和使用密钥

密钥管理服务支持的所有管理类功能和密码运算功能都适用于您在托管密码机中创建的密钥,具体功能如下:
  • 密钥状态的开启和禁用
  • 密钥的生命周期管理
  • 密钥的别名管理
  • 密钥的云标签管理
  • 密码运算接口的调用

和其他云产品的集成

托管密码机中的密钥,可以通过密钥管理服务的标准接口和ECS、RDS、OSS等其它云产品实现无缝集成,用于对阿里云上的原生数据进行保护。云产品需要支持对用户自选密钥进行服务端加密的能力。您只需在云产品中配置用于服务端加密的CMK,选择一个创建在托管密码机中的密钥即可。