数据脱敏

更新时间:

敏感数据在使用的过程中,应根据实际使用场景进行一定程度的脱敏,数据脱敏也是满足数据相关安全法规的一项安全控制措施,在执行数据脱敏的过程中,应注意数据脱敏的程度。从脱敏程度看分为了可逆和不可逆,企业需要结合实际脱敏场景来进行选择。

常见的可逆脱敏算法和方式如下:

  1. 替换脱敏:部分可逆算法,适用于证件号等构成规则固定的字段脱敏。使用替换码表进行映射替换(可逆Tokenization),或使用随机区间进行随机替换(不可逆),实现字段整体或者部分内容的脱敏。

  2. 加密脱敏:可逆算法,适用于对需要回源的字段进行加密的场景。支持常见的对称加密算法。

  3. 数据解密:可逆算法,适用于对需要回源的字段进行解密的场景。支持常见的对称加密算法。

常见的不可逆脱敏算法和方式如下:

  1. 哈希脱敏:不可逆算法,适用于密码或需要通过对比进行敏感数据确认的场景。支持常见的哈希算法,并支持偏移量(加盐值)配置。

  2. 遮盖脱敏:不可逆算法,适用于前端展示或敏感数据分享的场景。通过使用特殊字符(*或者#),对部分文字进行遮盖实现敏感数据的脱敏。

  3. 洗牌脱敏:不可逆算法,适用于结构化数据列级别的数据脱敏场景。在源数据表抽取数据并确认数值范围后,对该字段(在范围内)进行列级别的打散重排和随机选择,实现混淆脱敏。

什么情况下需要进行数据脱敏:

  1. 生产库向测试库转移生产数据并用于分析、验证、和测试时;

  2. 在面向个人敏感数据对外使用时,如向第三方提供数据,向企业下游供应商提供数据;

  3. 在可视化图表展示的时候,涉及一些敏感数据展示时需要进行脱敏处理;

  4. 在面向合规监管处理一些个人敏感数据或企业重要数据时要进行数据脱敏。

最佳实践

数据脱敏是一项控制措施,但在什么场景和什么环节应用数据脱敏需要结合企业实际情况而定,我们列举了一些企业常见的数据脱敏实践供参考:

序号

场景

脱敏环节

数据脱敏方式

1

面向前端、图标展示的场景中

在敏感数据输出在图标、大屏、前端Web页面环节时脱敏

Web代码中对敏感数据进行替换、遮盖等处理方式,敏感数据仍会在数据传输中体现,只是在展示时被替换。

2

从生产库转移到测试库

在数据从生产DB转移到测试DB时脱敏

采用脱敏任务的方式进行脱敏,具体可参考阿里云数据安全中心的静态脱敏功能:

  1. 创建脱敏任务

  2. 创建脱敏模板和算法

  3. 选择生产DB的敏感数据表

  4. 选择测试DB 的非敏感库表

  5. 执行脱敏任务

3

数据产生并写入数据库前进行实时脱敏

在数据生产时进行实时脱敏,再写入数据库时已经是脱敏后的数据

采用动态脱敏的方式,具体可参考阿里云数据安全中心的动态脱敏SDK