脱敏清单里只有手机号、身份证、银行卡三个字段,收货地址整段明文出现在客服工单里,连门牌号都在。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

SELECT column_name FROM information_schema.columns
WHERE table_name = 'orders'
  AND column_name REGEXP 'addr|phone|card|id_no';

脱敏规则按字段名匹配,地址字段叫 receiver_info 和 shipping_addr,两个都不在清单里。新加字段时没人回头补规则。这一点先确认清楚,后面就不用反复试。

「地址字段脱敏」这类改动最怕改一半,回滚脚本先准备好,再动生产。把复现步骤压到三条以内,交给同事也能跑出来,才算真的定位清楚。

改动写完就同步给同事,下一个人踩同一个坑,成本还是你的。验证用真实数据走一遍,测试数据太干净,边界情况根本碰不到。

能分两步做的操作就别合成一步,中间看一眼返回值,出问题好判断。

具体做法是,按数据字典梳理字段 别只看命名;地址保留省市区 详细地址掩码;新增字段走评审 必须标注敏感级别;定期跑全字段扫描找漏网的。

改完照着核一遍,工单里详细地址变成星号 省市区仍可用于分单。

作者 9823189