安全与复核
脱敏、假设、审阅清单
数据安全红线
⚠️ 绝对禁区
PII (个人身份信息): 严禁上传姓名、手机号、身份证、邮箱、具体地址给公有 LLM。
核心机密: 严禁上传未公开的财务报表、核心算法代码、并购计划等。
API Key: 代码中切勿硬编码 Key,AI 可能会在对话中复述出来。
如果不确定数据是否敏感,请遵循“最小权限原则”:默认不上传,必须上传时先脱敏。
脱敏技术指南
- Masking (掩码): `Jason -> J*n`, `13812345678 -> 138**5678`
- Hashing (哈希): 将用户 ID 转换为 SHA256 哈希值,保留区分度但去除身份信息。
- Synthesizing (合成): 让 AI 生成结构相同但内容虚构的“假数据”进行分析代码的调试。
简单的 Pandas 脱敏脚本
import hashlib
def hash_user_id(user_id):
return hashlib.sha256(str(user_id).encode()).hexdigest()[:16]
df['user_id_hashed'] = df['user_id'].apply(hash_user_id)
df_safe = df.drop(columns=['user_id', 'phone', 'email'])
# 现在 df_safe 可以安全地发给 AI 了复核清单 (Review Checklist)
每次分析后必问
- 1. 假设检查: AI 做出的分析基于什么假设?(例如:它是否假设了空值代表 0?)
- 2. 逻辑一致性: 图表上的数字和文字结论是否一致?
- 3. 代码审查: 它的 SQL 是否包含了正确的 WHERE 条件?(例如:是否漏掉了 deleted_at IS NULL)
权限与审计建议
- 最小权限: 分析账号只保留读取权限,禁止 UPDATE/DELETE。
- 审计日志: 关键报表的 SQL 与结果需记录到日志或版本库,方便追溯。
- 敏感字段白名单: 仅允许指定字段出现在查询结果中,避免误导出。
💡 Tips
企业建议: 在企业环境中尽量使用私有部署模型或企业版 API,确保数据不用于训练。
数据共享分级
| 等级 | 示例 | 是否可上传公有模型 |
|---|---|---|
| S1 公开数据 | 官网/公开报告 | 可 |
| S2 低敏数据 | 去标识的行为日志 | 谨慎,需脱敏 |
| S3 敏感数据 | 用户画像/交易数据 | 不可 |
| S4 机密数据 | 财务报表/并购计划 | 绝对不可 |
输出安全提示
安全提示词
请避免输出任何可识别个人信息(PII)。 只给聚合结果(如分组统计),不要输出明细行。
行业案例:电商
- 可共享: 订单金额分布、品类层级销量、区域级别热力图。
- 需脱敏: 用户手机号、地址、邮箱、订单号等。
- 替代方案: 仅输出聚合结果 + Top N 分类,不输出用户级明细。
行业案例:内容
- 可共享: 文章阅读量、留存曲线、转化漏斗的聚合视图。
- 需脱敏: 用户 ID、评论内容、行为序列明细。
- 替代方案: 抽样并匿名化内容片段,用于质量分析而非个体画像。
电商场景细化:脱敏与聚合
| 字段 | 处理方式 | 说明 |
|---|---|---|
| 手机号/邮箱 | Masking | 保留前 3 位 + 后 2 位 |
| 收货地址 | 删除/只保留城市 | 避免精确定位 |
| 订单号 | 哈希 | 用于去重与关联 |
| 用户 ID | 哈希 | 保留可分析性 |
内容场景细化:文本安全
- 评论文本: 先做脱敏(姓名/联系方式),再做主题聚类。
- UGC 图片: 必须先做裁剪与打码,避免背景泄露。
- 行为序列: 仅保留聚合后的路径 Top N。