3.2 个人信息保护与 GDPR

一句话

个保法 / GDPR 的核心不是 “加密存储”,而是三件事:有合法性基础、只收最小必要、全程可追溯;而这三件事的前提是 “先知道哪些字段是个人信息、哪些是敏感个人信息”——分类分级没做,后面全是空谈。

合法性基础(必须先选一个)

基础 适用 注意
同意 营销、非必要 cookie、画像 要 “具体、知情、可撤回”,不能捆绑
合同必需 下单、配送、售后 只限 “履行合同确实需要” 的字段
法定义务 实名、反洗钱、税务 要有明确法条依据
公共利益/紧急情况 防疫、救援 严格限定场景
正当利益(GDPR) 反欺诈、安全 需做 “利益平衡评估”

一句话判据:“这个字段不收集,业务还能不能做?” 能,就不该收(最小必要)。

敏感个人信息(处理要求更高)

类别 例子 额外要求
生物识别 指纹、人脸 单独同意 + 加密/本地比对
医疗健康 病历、用药 单独同意 + 严格权限
金融账户 卡号、流水 单独同意 + 脱敏展示
行踪轨迹 定位、出行 单独同意 + 最短留存
不满 14 周岁未成年人 儿童信息 监护人同意

数据主体权利与时限

权利 对应系统能力
访问/复制 导出接口(含 “我有哪些数据”)
更正 修改 + 审计
删除(被遗忘) 级联删除/匿名化(含备份与派生数据)
可携带 结构化导出(JSON/CSV)
撤回同意 开关 + 下游同步停止处理
泄露通报 发现后 72 小时内(GDPR)通知监管

关键难点是 “删除要删干净”:主库、缓存、搜索索引、数仓、备份、日志都要处理——这需要数据地图(字段级血缘),否则只能删主库,留下大量副本。

代码:字段级分类分级 + 脱敏策略

# 一份可执行的“数据地图”片段:每个字段都要有分类、合法基础、留存、脱敏
fields:
  user.phone:   {class: 个人信息, basis: 合同必需, retention: 账号存续期, mask: "138****1234"}
  user.id_card: {class: 敏感个人信息, basis: 法定义务, retention: 法定年限, encrypt: true, mask: "****"}
  user.face:    {class: 敏感个人信息, basis: 单独同意, retention: 30天, encrypt: true, local_match: true}
  order.addr:   {class: 个人信息, basis: 合同必需, retention: 2年, mask: "省市区***"}
-- 对外查询用脱敏视图,而不是把原始字段直接暴露
CREATE VIEW v_user AS
SELECT id, mask_phone(phone) AS phone, mask_id_card(id_card) AS id_card FROM user;

反模式

反模式 后果
用 “一揽子同意” 覆盖所有处理 同意无效,处罚风险
收集 “以后可能有用” 的字段 违反最小必要,删除成本高
删除只删主库 缓存/索引/数仓/备份仍留存,等于没删
敏感字段明文存日志 日志成为最大泄露面
没有数据地图 无法回答 “这个人的数据在哪”,权利请求无法履行
跨境传输不评估 违反出境规定(见 3.3 数据出境与数据主权)

三条铁律

🔑 先分类分级,再谈保护;不知道是什么,就保护不了。

🔑 最小必要:不收集,就没有泄露风险。

🔑 删除要覆盖 “所有副本”,否则等于没删。

自检

Q1 为什么 “用户点了同意” 还可能不合规?

▸ 答案:因为同意要满足 具体、知情、自愿、可撤回:捆绑在隐私政策里的 “一揽子同意”、默认勾选、以 “不用就不给用” 胁迫,都可能被认定无效。而且同意只对 “告知过的目的” 有效,超范围使用仍需重新取得同意。

Q2 “最小必要” 怎么判断?

▸ 答案:问 “不收集这个字段,业务能不能完成”:注册只要手机号,就不该强制要身份证;配送只要地址,就不该要生日。同时要问 “精度是否必要”(定位到街道 vs 精确坐标)与 “留存是否必要”(用完即删 vs 永久保存)。

Q3 删除请求为什么容易 “删不干净”?

▸ 答案:因为数据有多份副本:主库、缓存、搜索引擎、数仓、日志、备份、以及派生的画像/推荐特征。没有字段级数据地图与级联删除机制,只能删主库,其他副本仍在——从合规角度等于没删。

Q4 敏感个人信息为什么要 “单独同意”?

▸ 答案:因为它的泄露后果更严重(生物识别不可更改、医疗信息影响就业/保险),法律要求单独告知 + 单独同意,不能与其他条款混在一起。技术上还要配 “加密存储、最小权限、最短留存”。

Q5 72 小时通报是 “从什么时候开始算”?

▸ 答案:从 “知悉泄露” 开始算(不是从泄露发生),且要求说明 “性质、影响、已采取的措施”。所以内部要有 “发现 → 判定 → 上报” 的流程与值班机制;没有流程,等查清楚再报就超时了。

Q6 日志里出现手机号,算不算违规?

▸ 答案:风险很高:日志往往访问面广、留存久、缺少脱敏,一旦泄露就是批量泄露。合规做法是 “日志脱敏(掩码/哈希)+ 限制访问 + 短期保留”,并对 “排查需要明文” 的场景做单独审批与审计。

Q7 个保法与 GDPR 的差别,工程上要注意什么?

▸ 答案:GDPR 更强调 “问责(accountability)”:要能证明合规(记录处理活动、DPIA、同意记录);个保法强调 “告知-同意 + 单独同意 + 出境规则”。工程上共同点是 “数据地图 + 同意管理 + 权利响应 + 泄露流程”,差别在 “出境” 与 “记录义务” 的细节。

关联