一文读懂什么是数据脱敏以及具体落地方案
数据脱敏
数据脱敏(Data Masking)是一种信息安全技术,旨在保护敏感信息和隐私数据,防止未经授权的访问或泄露。它通过对原始数据进行有策略的修改或替换,创建一个看上去与原数据相似但不含真正敏感细节的数据副本,以供非生产环境如开发、测试、分析或培训等用途中安全使用。
数据脱敏的目的:
- 保护隐私:确保个人信息如身份证号、电话号码、银行账号等不被非法获取和利用。
- 合规要求:满足行业规范和法律法规对数据保护的要求,如GDPR(欧盟通用数据保护条例)等。
- 安全测试:在不影响真实数据安全的前提下,为软件测试、系统调试提供接近真实的测试数据。
- 降低风险:即便数据被非法访问,由于已脱敏,实际敏感信息不会泄露,降低了数据泄露的风险。
静态数据脱敏与动态数据脱敏:
- 静态数据脱敏:在数据被提取并复制到非生产环境之前一次性完成脱敏处理。适用于数据外发场景,如提供给第三方或用于测试数据库。
- 动态数据脱敏:在数据查询过程中实时进行,当用户访问敏感数据时,系统自动对其进行脱敏处理。适用于直接连接生产数据库的场景,确保即使查看数据的行为也不会暴露敏感信息。
数据脱敏的实现流程
1.确定受限制用户角色。敏感数据的可见范围,即是针对不同用户预设的。系统管理员,具有最高权限,任何时刻对任何表的任何字段都可见。
2.识别和梳理具体业务场景中需要脱敏展示的字段
3.通常采取动态数据脱敏方案进行脱敏处理,在查询语句执行过程中,根据生效条件(通常针对当前用户角色的判断)是否满足,实现实时的脱敏处理。确定脱敏列需要绑定的脱敏函数,完成对脱敏数据的存储和获取工作。
脱敏的具体实现方案
通常利用脱敏函数实现脱敏有以下几种方案实现
下图是原始数据
不可逆脱敏
无效化方案在处理待脱敏的数据时,通过对字段数据值进行 截断
、加密
、隐藏
等方式让敏感数据脱敏,使其不再具有利用价值。一般采用特殊字符(*
等)代替真值,这种隐藏敏感数据的方法简单,但缺点是用户无法得知原数据的格式,如果想要获取完整信息,要让用户授权查询。
截断方式
隐藏方式
数据替换方式
数据替换与前边的无效化方式比较相似,不同的是这里不以特殊字符进行遮挡,而是用一个设定的虚拟值替换真值。比如说我们将手机号统一设置成 “13800000000”。
可逆脱敏
对称加密是一种特殊的可逆脱敏方法,通过加密密钥和算法对敏感数据进行加密,密文格式与原始数据在逻辑规则上一致,通过密钥解密可以恢复原始数据,要注意的就是密钥的安全性。
建议代码脱敏实现方案
-
后端尽量避免返回敏感信息给前端
-
采⽤可逆的脱敏方法进行脱敏处理,目的是前后端可以解密使用的脱敏数据(否则采取简单的屏蔽删除方式进行脱敏,当需要数据交互时则无法实现)
-
数据脱敏和数据加密虽然是不同的技术,但在实际应用中,往往会结合使用,以增强对数据的保护。比如,在存储个人隐私数据时,可以先对敏感数据进行脱敏处理,然后再对整个数据进行加密。这样一来,即保护了个人隐私,又保证了数据的安全性。
我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!
更多推荐
所有评论(0)