开启透明数据加密功能
透明数据加密(Transparent Data Encryption,简称TDE),通过证书加密数据文件和备份文件,可进行实时的io加密/解密,能有效保护数据库及数据文件的安全。
目前,TDE加密功能仅支持部分RDS for SQL Server版本,详见表1。
实例类型 |
支持TDE加密功能的版本 |
---|---|
主备实例 |
|
单机实例 |
|
集群版实例 |
|
使用限制
- RDS for SQL Server暂不支持已开启TDE加密功能的单机实例转主备。
- RDS for SQL Server暂不提供TDE证书下载。如果需要通过加密的“.bak”文件在线下恢复数据,需执行以下操作:
- 关闭该数据库的TDE加密功能,请参考设置数据库级别的TDE加密功能。
- 创建该数据库的手动备份。
- 获取备份文件并通过备份文件恢复数据。
- 请根据需要开启该数据库的TDE加密功能。
- 开启TDE加密功能后,可提高数据安全性,但同时会影响访问加密数据库的读写性能。请谨慎选择开启TDE加密功能。
- 线下加密的数据库无法直接迁移上云数据库SQL Server实例,需要先关闭线下数据库级别的TDE加密功能,再进行迁移。
- 已开启实例级别TDE加密功能的实例无法使用“恢复到已有实例”功能。
- 在开启实例级别TDE加密功能、执行存储过程rds_tde、开启/关闭数据库级别TDE功能的过程中,建议不要进行以下操作,否则开启数据库级别TDE可能失败:
- 从数据库中的文件组中删除文件
- 删除数据库
- 使数据库脱机
- 分离数据库
- 将数据库或文件组转换为READ ONLY状态
- 使用ALTER DATABASE命令
- 创建快照
- 启动数据库或数据库文件备份
- 启动数据库或数据库文件还原
开启实例级别的TDE加密功能
- 登录管理控制台。
- 单击管理控制台左上角的,选择区域。
- 单击页面左上角的,选择“数据库 > 云数据库 RDS”,进入RDS信息页面。
- 在“实例管理”页面,单击目标实例名称,进入实例的“概览”页面。
- 单击“TDE状态”后的。
图1 开启实例级别的TDE加密功能
- 在弹出框中,单击“是”进行二次确认后,开启TDE加密功能。
实例级别的TDE加密功能一旦开启,将不允许关闭,请您谨慎操作。
设置数据库级别的TDE加密功能
在开启数据库级别的TDE加密功能之前,请确保已成功开启实例级别的TDE加密功能。
- 连接目标实例。
请参考通过公网连接RDS for SQL Server实例、通过内网连接RDS for SQL Server实例及通过DAS连接RDS for SQL Server实例。
- 通过rds_tde存储过程开启、关闭或查询TDE加密功能。
exec master.dbo.rds_tde DatabaseName,TDE_Action
- DatabaseName:目标数据库名,取值可为null。
- TDE_Action: