首页/数据/数仓建模速查/事实表敏感字段处理
维度与事实设计149 条

事实表敏感字段处理

事实表中的手机号、证件号等敏感信息不落明文:加盐哈希或脱敏映射;确需明文的另建受控表并最小授权。

数仓建模速查数据更新于 2026-10-13

事实表敏感字段处理

事实表里的手机号、证件号、银行卡号等敏感信息不要落明文:用加盐哈希或脱敏映射列替代,确需明文的另建受控表并最小授权、访问留痕。注意弱标识的特殊性——手机号、证件号的取值空间有限,无盐哈希可以被穷举反查,必须加盐;盐值本身要与数据分离保管。

基本信息

处理方式加盐哈希、脱敏映射、部分掩码
分层设计受限表保留明文 + 通用事实表只放脱敏值
弱标识手机号、证件号必须加盐哈希
代理列用不可逆 ID 替代明文做关联键
合规要求访问审计留痕,明确授权范围
密钥管理盐值单独保管,不写进代码或工单

典型使用场景

  • 身份关联:用哈希后的证件号做跨系统同一用户识别,不暴露明文
  • 风控指标:按手机号哈希统计设备与账号的关联关系
  • 对外共享:把脱敏后的数据提供给外部合作方
  • 客服查询:仅在受控应用中按完整标识反查,操作全程留痕
  • 合规检查:证明事实表中不存在明文敏感字段

加盐哈希与分层

加盐哈希与分层
SELECT sha2(concat(salt, id_card), 256) AS id_card_hash
FROM stg_user;                                  -- 加盐哈希,避免弱标识被穷举反查
SELECT sha2(concat(salt, phone), 256) AS phone_hash
FROM stg_user;                                  -- 电话同样加盐,无盐哈希可被号段穷举反查
-- 明文走受限表,不进通用事实层:授权最小化 + 访问审计

处理方式对照

方式可逆性适用场景
加盐哈希不可逆需要关联但不需要还原的标识
脱敏映射可逆(受控)客服等确需还原的场景
掩码不可逆仅展示用途,如尾号展示
明文受限表可读合规允许且最小授权的场景
脱敏方案与字段清单要过安全评审,哈希后仍可能被枚举的弱标识要加盐或改写:手机号只有有限的号段与位数,无盐哈希在算力面前基本等价于明文。
明文敏感信息一旦进入通用宽表,会随报表、导数、缓存等多条链路扩散,事后清理需要全链路排查;因此在入仓环节拦截比事后治理成本低得多。

易错点

  • 明文敏感字段散落在通用宽表里,随报表扩散,合规与口径双风险
  • 哈希不加盐,手机号等弱标识可被穷举反查,等同于未脱敏
  • 脱敏后仍作为唯一关联键使用,无法与源系统对齐时只能回退到明文
  • 确需明文的受控表未做访问审计,谁查过无记录,事故无法追溯

数据来源与参考

  • 数据安全实践:敏感数据脱敏
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌