3. 数据分类分级制度:分类标准、分级策略、敏感数据识别方法
数据分类分级,说白了就是给数据贴标签、定身价。我见过太多企业,一上来就搞什么「全量数据梳理」,结果搞了半年还在原地打转。其实没那么复杂,核心就三件事:分好类、定好级、认出敏感数据。
3.1 数据分类标准:怎么分才不打架?
数据分类,我个人的习惯是「业务驱动 + 属性约束」。什么意思?就是先看数据在业务里怎么用,再看它本身是什么类型。
举个例子,我在一家跨境电商公司做合规时,他们内部把数据分成这几类:
| 分类维度 | 具体类别 | 典型数据 |
|---|---|---|
| 业务属性 | 用户数据、订单数据、支付数据、物流数据 | 姓名、地址、信用卡号、运单号 |
| 数据来源 | 用户主动提供、系统自动采集、第三方接口 | 注册信息、浏览日志、征信报告 |
| 数据形态 | 结构化、半结构化、非结构化 | 数据库表、JSON日志、PDF合同 |
| 法律属性 | 个人信息、重要数据、核心数据 | 身份证号、行业统计数据、国家机密 |
你想想看,如果只按「业务属性」分,那支付数据里可能混着用户的身份证号,这明显是敏感信息。所以我的建议是:至少用两个维度交叉分类,比如「业务属性 + 法律属性」。
核心原则:分类标准要可落地、可自动化。别搞出几十个类别,最后没人记得住。我一般控制在 5-8 个大类,每个大类下不超过 5 个子类。
3.2 分级策略:定级不是拍脑袋
分级这件事,我踩过不少坑。最早我按「数据泄露后的影响程度」来定,结果发现同一个数据在不同场景下影响完全不同。比如用户的手机号,在营销场景下泄露可能只是骚扰电话,但在金融场景下泄露可能直接导致账户被盗。
后来我改用「影响范围 + 影响程度」二维矩阵,效果好了很多:
| 影响程度 \ 影响范围 | 个人 | 企业 | 社会/国家 |
|---|---|---|---|
| 轻微 | L1(公开) | L2(内部) | L3(敏感) |
| 中等 | L2(内部) | L3(敏感) | L4(机密) |
| 严重 | L3(敏感) | L4(机密) | L5(绝密) |
嗯,这里要注意:L1 和 L5 是最好定的,中间层最容易打架。我曾经遇到一个项目,市场部和法务部对「用户行为画像」的定级吵了三天。市场部说这是公开数据,法务部说这涉及隐私。最后怎么解决的?我们加了一个「数据聚合度」的维度——单条行为数据是 L2,但聚合后能识别出具体个人的,直接升到 L3。
我的小技巧:定级时先做「最小颗粒度」定级,再根据聚合情况做「向上调整」。比如单个 IP 地址是 L1,但连续 100 个 IP 能画出用户轨迹,那就得升到 L3。
3.3 敏感数据识别方法:别靠人工,靠规则
说到敏感数据识别,我见过最离谱的做法是——让实习生对着 Excel 一条条看。结果呢?漏了 30% 的敏感字段,还把人累得半死。
我的做法是「规则引擎 + 机器学习」双保险。先上规则,再上模型。规则引擎能覆盖 80% 的常见敏感数据,剩下的 20% 交给模型去猜。
规则引擎的核心是「正则表达式 + 上下文校验」。比如识别身份证号:
# 身份证号正则(18位)
^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$
# 但光有正则不够,还要校验校验位
def verify_id_card(id_number):
# 加权因子
weights = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]
check_codes = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2']
total = sum(int(id_number[i]) * weights[i] for i in range(17))
return check_codes[total % 11] == id_number[17].upper()
你看,光一个身份证号,正则只能筛出格式对的,但校验位能筛出伪造的。我建议你每个敏感数据类型都配一个「校验函数」,别偷懒。
对于更复杂的场景,比如非结构化的合同文本里找敏感信息,我会用命名实体识别(NER)模型。但这里有个坑:模型会有误报。我曾经在一个项目里,模型把「北京市朝阳区」识别成了敏感地址,但人家是公司注册地址,根本不算敏感信息。所以我的做法是:模型输出候选列表,规则引擎做二次过滤。
避坑指南:我曾经遇到一个客户,把所有包含「手机号」字段的表都标记为敏感数据。结果呢?他们的内部通讯录也包含手机号,但那是公开给全公司看的。所以识别敏感数据时,一定要结合「数据用途」和「访问权限」来判断,别一刀切。
3.4 实战中的常见问题
最后聊几个我经常被问到的问题:
- 「分类和分级谁先谁后?」 我个人习惯先分类再分级。分类是「是什么」,分级是「多重要」。先搞清楚数据是什么,再谈它有多重要。
- 「敏感数据识别准确率做到多少算合格?」 我的底线是 95% 以上。低于这个数,合规审计时会被挑战。但别追求 100%,那成本太高了,不现实。
- 「数据分类分级做完后怎么维护?」 定期复盘,至少每季度一次。业务变了,数据属性也会变。比如公司新上线了人脸识别功能,那面部特征数据就得重新定级。
好了,这一章的内容就这些。记住:分类分级不是一次性工程,而是持续运营的过程。别想着做完就完事,后面还有数据保护、跨境传输、合规审计等着你呢。