文档

支持集成KMS加密的云产品

更新时间:

本文介绍了当前支持集成KMS加密的阿里云产品。

重要

如果您已购买的阿里云产品支持集成KMS加密,且默认密钥中的服务密钥主密钥能满足业务需求,则无需再单独购买KMS实例。

工作负载数据加密

服务名称

描述

相关文档

云服务器 ECS(Elastic Compute Service)

ECS云盘加密功能默认使用服务密钥加密用户数据,也支持使用用户自选密钥加密用户数据。云盘的加密机制中,每一块云盘(Disk)会有相对应的用户主密钥(CMK)和数据密钥(DK),并通过信封加密机制对用户数据进行加密。

使用ECS云盘加密功能,系统会将从ECS实例传输到云盘的数据自动进行加密,并在读取数据时自动解密。加密解密操作在ECS实例所在的宿主机上进行。在加密解密的过程中,云盘的性能几乎没有衰减。

创建加密云盘并将其挂载到ECS实例后,系统将对以下数据进行加密:

  • 云盘中的静态数据

  • 云盘和实例间传输的数据(实例操作系统内数据不加密)

  • 从加密云盘创建的所有快照(即加密快照)

加密概述

容器服务 Kubernetes 版 ACK(Container Service for Kubernetes)

容器服务中的以下两类工作负载数据支持基于KMS的服务端加密:

  • Kubernetes Secrets

    在Kubernetes集群中,我们通常使用Secrets密钥模型存储和管理业务应用涉及的敏感信息。例如:应用密码、TLS证书、Docker镜像下载凭据等敏感信息。Kubernetes会将所有的这些Secrets密钥对象数据存储在集群对应的ETCD中。

  • 存储卷

    存储卷可以是云盘、OSS、或者NAS卷。针对各类存储卷,可以采用特定存储类型的服务端KMS加密方式。例如:您可以创建一个加密云盘,随后挂载为Kubernetes存储卷。

使用阿里云KMS进行Secret的落盘加密

持久化存储数据加密

服务名称

描述

相关文档

对象存储 OSS(Object Storage Service)

OSS支持在服务器端对上传的数据进行加密(Server-Side Encryption):

  • 上传数据时,OSS对收到的用户数据进行加密,然后将得到的加密数据持久化保存。

  • 下载数据时,OSS自动对保存的加密数据进行解密并把原始数据返回给用户。在返回的HTTP请求Header中,声明该数据进行了服务器端加密。

OSS在支持集成KMS之前就支持了SSE-OSS,即:使用OSS私有密钥体系进行服务端加密。这种方式并不使用归属用户的密钥,因此用户无法通过操作审计服务审计密钥使用情况。

OSS支持集成KMS进行服务端加密,称之为SSE-KMS。OSS支持使用服务密钥和用户自选密钥两种方式进行服务端加密。OSS既支持在桶级别配置默认加密CMK,也支持在上传每个对象时使用特定的CMK。

文件存储 NAS(Apsara File Storage NAS)

NAS的加密功能默认使用服务密钥加密用户数据。NAS的加密机制中,每一卷(Volume)会有相对应的用户主密钥(CMK)和数据密钥(DK),并通过信封加密机制对用户数据进行加密。

服务器端加密

表格存储(Tablestore)

表格存储的加密功能默认使用服务密钥为用户的数据进行加密,同时也支持使用用户自选密钥为用户的数据进行加密。表格存储的加密机制中,每一个表格(Table)会有相对应的用户主密钥(CMK)和数据密钥(DK),并通过信封加密机制对用户数据进行加密。

云存储网关 CSG(Cloud Storage Gateway)

云存储网关CSG支持两种方式进行加密:

  • 网关侧加密:文件会在网关侧缓存盘进行加密后上传至OSS。

  • 基于OSS对数据进行加密。

微服务引擎 MSE(Microservices Engine)

配置中心一般都以明文格式存储配置数据。为了提升敏感数据(如数据源、Token、用户名和密码等)的安全性,MSE通过集成KMS的密钥服务,提供了配置数据加解密能力,从而降低敏感数据的泄露风险。

配置加密

数据库加密

服务名称

描述

相关文档

云数据库 RDS(ApsaraDB RDS)

RDS数据加密提供以下两种方式:

  • 云盘加密

    针对RDS云盘版实例,阿里云免费提供云盘加密功能,基于块存储对整个数据盘进行加密。云盘加密使用的密钥由KMS服务加密保护,RDS只在启动实例和迁移实例时,动态读取一次密钥。

  • 透明数据加密TDE

    RDS提供MySQL和SQL Server的透明数据加密TDE(Transparent Data Encryption)功能。TDE加密使用的密钥由KMS服务加密保护,RDS只在启动实例和迁移实例时动态读取一次密钥。当RDS实例开启TDE功能后,用户可以指定参与加密的数据库或者表。这些数据库或者表中的数据在写入到任何设备(磁盘、SSD、PCIe卡)或者服务(对象存储OSS)前都会进行加密,因此实例对应的数据文件和备份都是以密文形式存在的。

云数据库 MongoDB 版(ApsaraDB for MongoDB)

提供透明数据加密TDE功能,加密方式和RDS类似。

设置透明数据加密TDE

云原生数据库 PolarDB

云数据库 OceanBase

TDE 透明加密

云数据库 Redis 版(ApsaraDB for Redis)

开启透明数据加密TDE

日志数据加密

服务名称

描述

相关文档

操作审计(ActionTrail)

创建单账号跟踪或者多账号跟踪时,如果选择投递到OSS,可以在操作审计控制台直接加密操作事件。

日志服务 SLS(Simple Log Service)

日志服务支持通过KMS对数据进行加密存储,提供数据静态保护能力。

数据加密

大数据与人工智能

服务名称

描述

相关文档

云原生大数据计算服务 MaxCompute

MaxCompute支持使用服务密钥或者自选KMS密钥进行数据加密。

数据加密

人工智能平台 PAI

机器学习PAI产品架构中,计算引擎、容器服务、数据存储等各个数据流转环节,相应的云服务均可以配置服务端加密,保护数据的安全与隐私。

更多场景

服务名称

描述

相关文档

内容分发网络CDN

当使用OSS Bucket作为源站时,可以使用基于OSS的服务端加密保护分发内容。

OSS私有Bucket回源

媒体处理 MPS(ApsaraVideo Media Processing)

MTS支持私有加密和HLS标准加密两种方式,均可以集成KMS对视频内容进行保护。

阿里云私有加密

视频点播 VOD(ApsaraVideo VOD)

VOD支持阿里云视频加密和HLS标准加密两种方式,均可以集成KMS对视频内容进行保护。

云效代码管理Codeup

云效代码管理Codeup使用KMS服务密钥对用户提交的源码进行加密,确保云端代码数据不泄露。在代码加密过程中,每个代码库都有对应的数据密钥(DK),并通过信封加密机制对代码数据进行加密,在获得用户密钥授权的前提下:

  • 当用户使用Git客户端或页面提交Git数据时,Codeup对收到的代码数据执行加密,并持久化存储加密后的数据。

  • 当用户使用Git客户端或页面访问Git数据时,Codeup根据授权对保存的加密数据进行解密,并把原始数据返回给用户。

说明

启用Codeup代码加密服务,几乎不影响代码托管性能。

代码仓库加密