当您的数据库中有数据需要被保护时,可以使用RDS MySQL全密态数据库功能,该功能提供的加密解决方案能够在遵守数据保护法规的前提下保障您的数据安全,使被保护数据免受未授权访问。本文将详细介绍RDS MySQL全密态数据库功能的优势,帮助您高效管理和保护数据隐私。
支持所有已有的SQL计算,且应用透明无感知
业务不需要在客户端做额外加解密功能,仅需几行配置命令即可接入全密态数据库,已有代码无需任何修改。
支持所有SQL计算,业务SQL可不经修改直接在全密态数据库上执行。例如,支持明文SQL进行模糊匹配查询。
兼容存量数据库,数据库可升级到全密态数据库,也可以回滚到明文数据库。
支持DTS、DMS等生态工具,应用可“0”改造迁移。
开启数据保护规则后,服务端任意访问返回数据均为加密
用户可以基于业务需要,配置数据保护规则(配置方式请参见管理数据保护规则),指定需要被保护的数据以及保护方式(例如加密)。全密态数据库在查询过程中,自动识别被保护的数据,并基于规则指定的方式对结果进行预处理后再返回。即使数据库账号泄露,包括数据库研发和运维人员在内的第三方,都无法看到查询结果被保护的数据内容。
对各种包含被保护数据的表达式计算结果,例如加减法、聚合运算、Join操作等等,全密态数据库都会基于用户指定数据保护规则,从计算源数据的安全性出发决定是否对计算结果进行保护。
加密控制粒度能精细到表和列级别
数据保护规则控制的加密粒度能精确到表和列级别。
例如,若用户规则中指定A列为被保护列,且使用加密方式保护,则全密态数据库会使用用户提供的密钥,自动对A列结果进行加密,仅持有密钥的用户可以解密获得A列的明文内容。
性能损耗小
性能损耗小,贴近现有明文数据库。
查询性能与用户查询返回的数据大小成反比,即查询返回的数据越多,性能损耗相应增加。
支持用户指定密钥,且服务结束时自动销毁
用户可以任意选择己方信任的已有或者第三方密钥管理服务,获取密钥后,动态传递给全密态客户端(例如传参)。通过客户端接入全密态数据库的方法,请参见客户端使用说明。
密钥仅由用户持有,运行时通过安全分发机制参与数据库查询,服务结束时自动销毁,无需担心密钥被外部或者内部用户窃取。
支持密钥更新、轮转。
支持多种客户端接入方式
支持客户端Driver、SDK接入,支持Java、Go、Python等语言。
客户端Driver自动完成解密,应用无需更改。
SDK提供灵活的安全调用接口,可以自由控制密态数据的处理过程。
数据保护规则当前仅支持加密保护方式。
客户端仅支持密文查询结果解密,暂不支持输入SQL加密。