数据库安全关键技术之数据库脱敏
作者:安华金和 发布时间:2017-01-08

近年来,各行业用户逐渐加深对企业信息化的依赖程度,各类新业务系统开发、上线,大数据技术深入应用,以及运维工作的普遍外包,这些场景中,不可避免的需要将核心数据外发,离开数据库后,敏感数据即脱离了企业掌控,如何避免数据泄露?脱敏技术正在被越来越多的用户应用,下面对数据库安全中的关键技术--数据库脱敏技术的几个关键点重点介绍:

1、自动识别敏感数据

数据库脱敏工具应当能够按照用户指定的一部分敏感数据或预定义的敏感数据特征,在执行任务过程中对抽取的数据进行自动的识别,发现敏感数据,并自动的根据规则对发现的敏感数据进行脱敏处理。

通过自动识别敏感数据,可以避免按照字段定义敏感数据元的繁琐工作,同时最大限度的对所有需要抽取的敏感数据进行自动脱敏,同时能够持续的发现新的敏感数据。

2、多样的脱敏算法和策略

数据库脱敏工具需要根据不同数据特征,提供多种的脱敏算法,可对常见数据如姓名、证件号、银行账户、金额、日期、住址、电话号码、Email地址、车牌号、企业名称、工商注册号、组织机构代码、纳税人识别号等敏感数据进行脱敏,如:

同义替换,使用相同含义的数据替换原有的敏感数据,如姓名脱敏后仍然为有意义的姓名,住址脱敏后仍然为住址。

部分数据遮蔽,将原数据中部分或全部内容,用“*”或“#”等字符进行替换,遮盖部分或全部原文。

混合屏蔽,将相关的列作为一个组进行屏蔽,以保证这些相关列中被屏蔽的数据保持同样的关系,例如,城市、省、邮编在屏蔽后保持一致。

确定性屏蔽,确保在运行屏蔽后生成可重复的屏蔽值。可确保特定的值(如,客户号、身份证号码、银行卡号)在所有数据库中屏蔽为同一个值。

可逆脱敏,确保脱敏后的数据可还原,便于将第三方分析机构和内部经分团队基于脱敏后数据上的分析的结果还原为业务数据。

3、数据子集管理

在许多场景下,并不需要将全部生产环境中数据脱敏至目标环境使用,如开发环境可能仅需要生产环境中1%的数据;统计分析场景则需要对全部数据进行合理采样。需要对目标数据库中一部分数据进行脱敏,用户可指定过滤条件,对数据来源进行过滤筛选形成数据子集,适应不同场景下脱敏需求。

4、脱敏数据验证

在脱敏产品的使用过程中,会面临生产环境中数据或数据结构频繁发生变化的场景,如果脱敏策略没有及时进行调整,会造成敏感数据“漏网”的现象,造成敏感数据泄露。

脱敏数据验证功能,能够对脱敏后的数据进行“验证”,确定哪些数据是“漏网”的真实数据,从而帮助用户在使用这些数据前能够及时的发现并相应的弥补脱敏脚本的不足。

5、动态脱敏

动态脱敏即对业务系统数据库中敏感数据进行透明的、实时的脱敏。依据用户的角色、职责和其他IT定义身份特征,动态的对生产数据库返回的数据进行专门的屏蔽、加密、隐藏和审计,可确保不同级别的用户按照其身份特征恰如其分的访问敏感数据,并且不需要对生产数据库中的数据进行任何改变。

动态数据脱敏应同样支持同义替换、部分遮蔽、混合脱敏、确定性脱敏及可逆脱敏,产品使用者可根据不同用户身份特征,指定对应的数据脱敏算法。

数据库脱敏技术的引入,能够很大程度上规避“数据主动泄露”的安全隐患,但应重点强调强调的是,成熟的脱敏技术,必须在提高数据库安全性的同时,能够应对所有的数据使用需求,决不能因为保证安全性而丧失数据本身的使用价值。