SSL

RDS提供MySQL和SQL Server的安全套接层协议(Secure Sockets Layer,简称SSL)。您可以使用RDS提供的服务器端的根证书来验证目标地址和端口的数据库服务是不是RDS提供的,从而可有效避免中间人攻击。除此之外,RDS还提供了服务器端SSL证书的启用和更新能力,以便用户按需更替SSL证书以保障安全性和有效性。

需要注意的是,虽然RDS提供了应用到数据库之间的连接加密功能,但是SSL需要应用开启服务器端验证才能正常运转。另外SSL也会带来额外的CPU开销,RDS实例的吞吐量和响应时间都会受到一定程度的影响,具体影响与您的连接次数和数据传输频度有关。

具体操作请参见设置SSL

TDE

RDS提供MySQL和SQL Server的透明数据加密(Transparent Data Encryption,简称TDE)功能。MySQL版的TDE由阿里云自研,SQL Server版的TDE是基于SQL Server企业版的功能改造而来。

当RDS实例开启TDE功能后,您可以指定参与加密的数据库或者表。这些数据库或者表中的数据在写入到任何设备(磁盘、SSD、PCIe卡)或者服务(表格存储OSS、归档存储OAS)前都会进行加密,因此实例对应的数据文件和备份都是以密文形式存在的。

TDE加密采用国际流行的AES算法,密钥长度为128比特。密钥由KMS服务加密保存,RDS只在启动实例和迁移实例时动态读取一次密钥。您可以自行通过KMS控制台对密钥进行更换。

具体操作请参见设置透明数据加密