KMS支持多种业务场景,包括管理密钥和凭据,密码运算以及获取凭据值,每个场景的接入方式不同。本文介绍如何根据不同的应用场景选择合适的接入方式。
接入KMS概览
KMS提供了阿里云SDK、凭据SDK和实例SDK,在应用程序集成不同的SDK时,由于所访问的网关类型各异,对应的身份认证与鉴权方式也有所不同。KMS支持两种网关类型,具体如下:
管控类操作
管控类操作包括实例、密钥、凭据相关的管控操作,例如创建密钥、创建凭据、创建KMS实例、修改密钥标签等。
管控类操作只能使用阿里云SDK接入,通过访问共享网关Endpoint调用OpenAPI。
密码运算操作
本文仅介绍自建应用如何使用KMS,云产品如何使用KMS,请参见云产品集成KMS加密概述和支持集成KMS加密的云产品。
密码运算操作包括对称加解密、非对称加解密、信封加密、生成数据密钥、数字签名、验证签名等与密码学相关的操作。
密码运算操作可以通过阿里云SDK或者KMS实例SDK接入。
访问方式
集成阿里云SDK访问共享网关。
(推荐)集成阿里云SDK访问专属网关。
集成KMS实例SDK访问专属网关。
下表列出了这三种访问方式的主要区别:
对比 | 阿里云SDK(推荐) | 实例SDK | |
网关类型 | 共享网关 | 专属网关(推荐) | 专属网关 |
Endpoint | 公网、VPC域名 | KMS私网域名 | KMS私网域名 |
身份认证与鉴权 | RAM | RAM | AAP |
CA证书 | 无需指定CA证书 | 需要指定CA证书 | 需要指定CA证书 |
支持的开发语言 | 支持8种:
| 支持8种:
| 支持5种:
|
支持的API | 全部密码运算OpenAPI。详细介绍,请参见 密码运算。 | 除ReEncrypt外的全部密码运算OpenAPI。详细介绍,请参见 密码运算。 | 全部密码运算实例API。详细介绍,请参见实例 API。 |
获取凭据值
您可以通过凭据SDK、阿里云SDK、实例SDK来获取KMS凭据值。
访问方式
集成阿里云SDK访问共享网关或专属网关。
集成凭据SDK访问共享网关或专属网关。
集成KMS实例SDK访问专属网关。
下表列出了这些访问方式之间的主要区别。
对比 | 凭据SDK | 阿里云SDK | 实例SDK | |||||||
适用场景 | 所有凭据类型。 |
| RAM凭据 | 所有凭据类型。 | 所有凭据类型。 | |||||
支持的开发语言 | 支持3种:
| 支持1种: Java(Java 8及以上版本) | 支持3种:
| 支持5种:
| ||||||
网关类型 |
| 共享网关 | 专属网关 |
SDK接入流程概述
选择了符合您业务需求的SDK和访问方式之后,请按照以下流程集成SDK以使用KMS。
参考资料
关于如何集成SDK以使用KMS的详细信息,请参见: