本文介绍云数据库MongoDB提供的数据加密功能。

SSL

云数据库MongoDB支持安全套接字协议(Secure Sockets Layer,简称SSL)。您可以使用云数据库MongoDB提供的服务器端根证书来验证目标地址和端口的数据库服务是不是云数据库MongoDB提供的,以有效避免被其他人攻击。除此之外,云数据库MongoDB还提供了服务器端SSL证书的启用和更新能力,方便您按需更新SSL证书以保障安全性和有效性。SSL的设置方法请参见 设置SSL加密
注意 虽然云数据库MongoDB提供了应用到数据库之间的连接加密功能,但是SSL需要应用开启服务器端验证才能正常运转。另外SSL也会带来额外的CPU开销,MongoDB实例的吞吐量和响应时间都会受到一定程度的影响,具体影响与您的连接次数和数据传输频度有关。

TDE

云数据库MongoDB支持透明数据加密(Transparent Data Encryption,简称TDE)功能。TDE加密采用国际流行的AES算法。密钥由KMS服务加密保存,MongoDB只在启动实例和迁移实例时动态读取一次密钥,您可以自行通过KMS控制台对密钥进行更换。

当云数据库MongoDB实例开启TDE功能后,新创建的数据库或集合中的数据在写入到任何设备(例如磁盘、SSD、PCIe卡)、服务(例如对象存储OSS)前都会进行加密,因此实例中对应的数据文件和备份文件都是以密文形式存在的。TDE的设置方法请参见设置透明数据加密TDE