应用接入专属KMS标准版实例后,专属KMS标准版将使用租户独享的密码资源池(密码机集群),实现资源隔离和密码学隔离,为您的业务数据提供可靠、安全、合规的数据加密保护能力。本文介绍如何启用专属KMS标准版实例、如何创建密钥、以及如何让应用接入实例。
前提条件
- 已购买专属KMS标准版实例。具体操作,请参见开通密钥管理服务。 
- 专属KMS标准版实例需关联同一阿里云账号下已配置的加密服务密码机集群。关于如何配置密钥管理服务关联的密码机集群,请参见配置KMS硬件密钥管理实例的密码机集群。 
步骤一:启用专属KMS标准版实例
- 登录密钥管理服务控制台。 
- 在专属KMS页面,找到目标专属KMS标准版实例,在操作列单击启用。 
- 在连接密码机对话框,指定密码机集群。 说明- 一个专属KMS标准版实例只能绑定一个密码机集群。 
- 配置访问凭据。 - 专属KMS标准版实例与密码机连接时采用双向TLS认证,需要配置客户端证书(带保护口令的PKCS12格式证书)和安全域证书(为密码机集群签发TLS服务端证书的CA证书,PEM格式)。 - 客户端保护口令:您在生成客户端证书 - client.p12时设置的保护口令。如果是使用证书文件生成工具(hsm_certificate_generate)生成,默认为12345678。
- 客户端证书:PKCS12格式证书。单击选择文件,选择为密码机实例创建双向TLS认证中生成的 - client.p12文件进行上传。
- 安全域证书:PEM格式CA证书。单击选择文件,选择为密码机实例创建双向TLS认证中生成的 - rootca.pem文件进行上传。
 
- 单击连接密码机。 - 请等待几分钟,然后刷新页面,当状态变更为已启用时,专属KMS标准版实例启用成功。 
步骤二:为专属KMS标准版实例创建密钥
- 在专属KMS页面,找到目标专属KMS标准版实例,单击操作列的管理。 
- 在用户主密钥区域,单击创建密钥,在创建密钥对话框,配置以下参数后单击确定。 - 参数名称 - 说明 - 密钥类型 - 密钥的类型。取值: - 对称密钥的类型: - Aliyun_AES_256 
- Aliyun_AES_128 
- Aliyun_AES_192 
- Aliyun_SM4 
 
- 非对称密钥的类型: - RSA_2048 
- RSA_3072 
- RSA_4096 
- EC_SM2 
- EC_P256 
- EC_P256KHMAC_SHA512 
 
 - 密钥用途 - 密钥的用途。取值: - Encrypt/Decrypt:数据加密和解密。 
- Sign/Verify:产生和验证数字签名。 
 - 别名 - 用户主密钥的标识符。支持英文字母、数字、下划线(_)、短划线(-)和正斜线(/)。 - 描述 - 密钥的说明信息。 - 高级选项 - 密钥材料来源 - 阿里云KMS:密钥材料将由专属KMS生成。 
- 外部:专属KMS将不会生成密钥材料,您需要将自己的密钥材料导入专属KMS。更多信息,请参见导入对称密钥材料。 说明- 请仔细阅读并选中我了解使用外部密钥材料的方法和意义。 
 
- 附加密钥用途:当密钥类型为非对称密钥时,支持设置附加密钥用途,让一个密钥具有多个用途。 
 
步骤三:为专属KMS标准版实例创建凭据
如果您需要使用凭据管家的功能并在购买实例时设置了凭据数量,需要执行本步骤,否则跳过本步骤。
- 在专属KMS页面,单击目标实例的实例ID后,单击凭据页签。
- 单击创建凭据,在创建凭据对话框中完成凭据配置,单击下一步。 - 根据您的凭据类型不同,配置项不同。 - 通用凭据: - 配置项 - 说明 - 选择凭据类型 - 选择通用凭据。 - 凭据名称 - 输入自定义的凭据名称。 - 设置凭据值 - 根据您要托管的敏感数据类型,选择凭据键/值或纯文本。 - 初始版本号 - 凭据的初始版本号。默认为v1,也支持自定义版本号。 - 描述信息 - 输入凭据的描述信息。 - 加密主密钥 - 选择同实例的一个用户主密钥作为凭据的加密主密钥。 
- 托管RDS凭据: - 配置项 - 说明 - 选择凭据类型 - 选择托管RDS凭据。 - 凭据名称 - 输入自定义的凭据名称。 - 选择RDS实例 - 选择阿里云账号下已有的RDS实例。 - 设置凭据值 - 双账号托管(推荐):适用于程序化访问数据库场景。托管两个相同权限的账号,保证口令重置切换的瞬间,程序访问不被中断。 - 单击一键创建和授权页签,配置账号名、选择数据库并指定权限。 说明- 一键创建和授权不会立即为您配置新的账号,而是在您审核确认凭据信息之后进行配置。 
- 单击导入已有账号页签,选择用户名、配置口令。 说明- 建议您将口令配置为创建RDS实例用户账号时对应的密码。如果导入的账号和口令不匹配,您可以在凭据首次轮转之后,获取正确的账号和口令。 
 
- 单账号托管:适用于高权限账号或者人工运维账号托管场景。口令重置切换的瞬间,凭据的当前版本可能暂时无法使用。 - 单击一键创建和授权页签,配置账号名、选择账号类型。 - 您可以选择普通账号和高权限账号两种账号类型。当您选择普通账号时,还需选择数据库并指定权限。 
- 单击导入已有账号页签,选择用户名、配置口令。 
 
 - 描述信息 - 输入凭据的描述信息。 - 加密主密钥 - 选择同实例的一个用户主密钥作为凭据的加密主密钥。 
- 托管RAM凭据: - 配置项 - 说明 - 选择凭据类型 - 选择托管RAM凭据。 - 选择RAM用户 - 选择您要托管凭据的RAM用户,所选RAM用户需要至少有一个AccessKey。 - 设置凭据值 - 在AccessKey ID右侧输入对应的AccessKey Secret。 说明- 建议您输入正确的AccessKey Secret。如果AccessKey Secret不正确,您将在RAM凭据首次轮转后获取一组新的AccessKey ID和AccessKey Secret。 - 描述信息 - 输入凭据的描述信息。 - 加密主密钥 - 选择同实例的一个用户主密钥作为凭据的加密主密钥。 
- 托管ECS凭据: - 配置项 - 说明 - 选择凭据类型 - 选择托管ECS凭据。 - 凭据名称 - 输入自定义的凭据名称。 - 托管实例 - 选择阿里云账号下已有的ECS实例。 - 托管用户 - 填写ECS实例上已有的用户名称,例如:root(Linux系统)或Administrator(Windows系统)。 - 初始凭据值 - 选择口令或密钥对,填入对应的初始凭据值。 - 口令:用户登录ECS实例的密码。 
- 密钥对:用户登录ECS实例的SSH密钥对。 
 说明- 建议输入正确的凭据值。如果输入的凭据值不正确,在ECS凭据首次轮转前,您从凭据管家获取到的口令或密钥对将不能正常登录ECS实例。 - 描述信息 - 输入凭据的描述信息。 - 加密主密钥 - 选择同实例的一个用户主密钥作为凭据的加密主密钥。 
 
步骤四:应用接入专属KMS标准版实例
- 创建应用接入点AAP(Application Access Point),控制应用正常访问专属KMS标准版实例。 - 在专属KMS页面,找到目标专属KMS标准版实例,单击操作列的详情。 
- 在应用接入指南区域,单击快速创建应用接入点。 
- 在快速配置应用身份凭证和权限面板,设置应用接入点信息后,单击创建。 - 输入应用接入点名称。 
- 设置访问控制策略。 - 允许访问资源:默认填写 - Key/*- secret/*,表示允许访问当前专属KMS标准版实例的全部密钥和凭据。
- 允许网络来源:允许访问的网络类型和IP地址。您可以设置私网IP地址或者私网网段,多个IP地址之间用半角逗号(,)分隔。 
 
 
- 在应用身份凭证对话框,获取凭证口令和应用身份凭证内容(Client Key)。 - 凭证口令:单击复制口令,获取凭证口令。 
- 应用身份凭证内容:单击下载应用身份凭证,保存应用身份凭证信息。 - 应用身份凭证信息包含凭证ID(KeyId)和凭证内容(PrivateKeyData),凭证内容为PKCS12格式Base64编码。示例如下: - { "KeyId": "KAAP.71be72c8-73b9-44e0-bb75-81ee51b4****", "PrivateKeyData": "MIIJwwIBAz****ICNXX/pOw==" }说明- KMS不会保存Client Key的凭证口令和应用身份凭证内容,您只能在创建Client Key时获取到该信息,请妥善保管。 
 
- 单击关闭。 
 
- 获取CA证书,以便验证专属KMS标准版实例。 - 在应用接入指南区域,单击获取实例CA证书下方的下载,下载.pem格式的CA证书文件。 
后续步骤
您可以使用专属KMS SDK,通过访问专属KMS API调用密钥管理服务。具体操作,请参见专属KMS Java SDK、专属KMS PHP SDK、专属KMS Go SDK和专属KMS Python SDK。