数据脱敏规则和脱敏方法有哪些

安全与风控

给数据治理人员的脱敏速查:怎么定规则、怎么挑方法、怎么验收,附判断顺序与不适用情形。

你要给一张表或一批日志做脱敏,卡住的地方通常不是「知不知道哈希和掩码」,而是规则怎么定、字段怎么分类、方法选哪个、做完怎么证明合格。这篇按「先分类再定规则再选方法再验收」的顺序走一遍,给判断标准和可执行动作,具体口径和数字到站内对应页面核对。

给一张表或一批日志做脱敏,卡住人的地方往往不是「知不知道哈希和掩码」,而是规则怎么定、字段怎么分类、方法选哪个、做完怎么证明合格。这四件事有先后顺序,跳步做基本会返工。下面按「先分类、再定规则、再选方法、最后验收」走一遍,每一步给判断标准和能直接上手的动作。

文中所有口径、等级划分、字段样例都以站内页面为准,涉及数量或比例的地方不写死,到对应页面核对当时的数字即可。方法论部分可以照抄,具体阈值按你自己的数据盘点结果填。

先定规则:从字段清单到脱敏等级

规则不是从方法开始的,是从字段清单开始的。把要处理的表、日志、导出文件的字段拉成一张清单,逐个标成直接标识符、准标识符、业务属性三类。这个分类做错,后面方法一定选错,而且错得很难发现——数据看起来已经不像原始值了,但组合起来仍然能把人认出来。

直接标识符
单独一列就能定位到具体个人的字段,比如姓名、证件号、手机号、邮箱、住址门牌
准标识符
单独看不定位、组合起来可能定位的字段,比如年龄、地区、职业、入职年份
业务属性
业务上要用、但本身不指向个人的字段,比如订单金额、商品编号、渠道

分完类再定等级。等级只问三件事:谁能看、能看几遍、看不看得回去。只展示不解密是一档,可逆但可审计是一档,完全不可逆是一档。等级决定方法选择,不是先挑好方法再回头补等级——反过来做,通常会出现「明明写了不可逆,结果留了一份映射表在对账目录里」这种漏洞。

  • 规则要写成一句可执行的话,例如「手机号只留前三后四,对内可查原值,对外不可查」,含糊表述落不了地
  • 每条规则写清适用范围:哪张表、哪些字段、哪些角色、什么场景下生效
  • 规则要带版本号,改一次记一次,验收时先确认跑的是哪一版
  • 不适用情形:字段来源不明、字段含义上下游说法不一致、本身带合规限制时,先停下做数据盘点,别急着脱敏

方法怎么挑:按字段类型和数据用途对照

挑方法看两个维度:字段属于哪一类,脱敏后的数据还要拿来干什么。只满足第一个维度,做完的数据多半不能用;只满足第二个维度,往往又没脱干净。下面这张对照表给的是判断顺序,具体参数去站内方法说明页核对。

字段类型优先方法方向要注意的点
姓名、证件号、手机号不可逆替换或掩码需要留原值的另存受控环境,不要在同一份数据里留后门
年龄、地区、职业泛化或分桶组合字段要一起看,单字段安全不代表组合安全
金额、时长等数值截断或扰动会破坏统计口径,先确认下游接不接受误差
备注、会话记录等文本替换或删除正则打不全,先抽样看真实文本长什么样
需要精确关联的字段保留并加访问控制这类字段不适合扰动,否则对外结算算不平
  • 先按分类筛掉明显不合适的候选方法,剩下两三个再比可逆性和下游可用性
  • 文本类字段一定要先抽样,别看字段名就定规则,备注里经常混着手机号和身份信息
  • 方法确定后写进规则说明,标注「为什么不用其他方法」,方便后续复查时不用重新论证
  • 不适用情形:需要精确关联或对外结算的字段,别用扰动类方法;纯文本语料类数据,别指望对账式验收

如果用哈希这类不可逆方式,还要注意同一原值在不同表里是否要能对上。要对得上,就得用同一套盐和同一套算法,并把盐单独管好;对不上,就别在跨表分析里硬拼。这一步决定权其实在下游用途,不在脱敏工具。

落地流程:批处理、日志、导出三条线

同样一套规则,落到三条线上做法不一样。批量数据、日志、导出共享,各自最容易出问题的位置不同,分开看比统一处理更省事。

  1. 批量数据线走批处理脱敏,重点是规则版本管理:同一张表换规则要能追溯是哪一版跑的,出现问题时能回滚到上一版重跑
  2. 日志线建议在写入前就做字段过滤,而不是事后清洗。日志量大、格式杂,事后清洗的漏网概率明显更高,站内日志脱敏与留存速查可对照看
  3. 导出共享线规则要配合审批和标记,谁导的、导了什么、导出文件带什么标识要能查。这条线最容易出事,也最难事后追
  4. 小团队简化做法可以直接用本地工具做批量整理,避免数据出本机,站内工具页有对应的本地处理入口,到 站内工具目录 看当时的可用工具
  5. 留痕每一步留一份规则说明和脱敏样本,抽样样本比规则文档更管用,复核时直接看样本

三条线共同的坑是「规则只写在文档里、没写进流程」。文档里的规则靠人记得住,流程里的规则靠工具执行。条件允许的话,把字段分类和等级做成配置,让脱敏在管道里自动执行,人只审例外。

验收与复查:怎么证明脱敏做对了

验收不能只看「跑完了没报错」。没报错只说明格式对,不说明数据安全。下面四类验收动作建议组合使用,具体抽多少、覆盖到什么程度,按数据量和风险等级到站内页面核对参考口径。

验收方式怎么做能发现什么问题
抽样式随机抽样人工看一遍,重点看边界值、空值、超长文本规则没覆盖到的字段和异常格式
关联式拿脱敏后数据尝试反查原始数据方法选得不够狠、组合字段仍可重识别
对账式比对脱敏前后行数、合计、分布处理过程丢数据或重复处理
覆盖率式核对字段清单与规则命中情况有字段漏配规则,清单外新增字段没人管
能反查回去的脱敏,等于没做。
  • 定复查节奏:数据源变了、用途变了、字段新增了,就重跑一次规则评估,不要一次做完永久不管
  • 规则和验收记录放一起,复核时先看上次的验收结论,再决定这次重点查哪里
  • 不适用情形:无法做对账的场景(比如纯文本语料),改用抽样加字段覆盖率检查,别硬凑对账指标

还有一个容易被忽略的动作:把脱敏后的数据当成新数据源来管。它有新的字段含义、新的使用边界、新的共享范围,如果继续按原始数据的管理方式流转,前面做的规则很快就会失效。

下一步想对照具体工具和方法说明,或者查当时的口径与参考数字,可以从站内工具目录和评测页面入手,先看清单再动手,能少返工一轮。

常见问题

脱敏和加密到底该用哪个?

看用途:数据要长期存放且可能被还原,用加密;只是给别人看、不需要还原,用脱敏。两者目标不同,别混着用。具体边界站内有专门对比页可对照。

规则定好了,能不能一次跑完全部数据?

不建议。先拿一份小样本跑通,看边界值和大文本有没有漏,再全量。全量跑完再发现问题,返工成本高很多。

脱敏后是不是就安全了?

不是。脱敏降低的是直接识别风险,组合字段、外部数据碰撞仍可能重识别。做完要复查一遍关联性,别把脱敏当免责。

本文依据各平台公开文档与官方公告整理,只做中文归纳;具体做法、参数与限制以官方文档为准。