关于 auto-data-discovery
面向隐私、数据治理与合规团队,介绍自动发现和分类企业数据中个人信息的方法。内容涵盖 Microsoft Purview、BigID、OneTrust DataDiscovery 和 AWS Macie 的扫描配置、准确性优化及隐私流程衔接。
主要功能
- 01扫描结构化与非结构化数据源
- 02分类并编目个人数据
- 03配置扫描规则与计划
- 04通过反馈和规则调整分类准确性
- 05将发现结果接入隐私合规流程
适用场景
- 01盘点企业系统中的个人数据
- 02在数据源新增后进行发现扫描
- 03为 DPIA 和数据主体请求定位相关数据
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mukul975/ privacy-data-protection-skills --skill auto-data-discovery安装后在 Claude Code 中输入/auto-data-discovery确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/template.mdreferences/standards.mdworkflows.mdscripts/process.py详细介绍
自动化个人数据发现与分类
概述
自动化数据发现工具会扫描结构化和非结构化数据存储库,以识别、分类和编目整个企业中的个人数据。手动维护的数据清单无法跟上现代数据处理的规模、速度和多样性。自动化发现可持续洞察个人数据的存储位置、流转方式,以及是否按照政策完成分类和保护。本技能介绍四个领先平台的实施模式——Microsoft Purview、BigID、OneTrust DataDiscovery 和 AWS Macie,重点关注扫描配置、准确性优化以及与隐私合规工作流的集成。
平台对比
| 能力 | Microsoft Purview | BigID | OneTrust DataDiscovery | AWS Macie |
|---|---|---|---|---|
| 结构化数据扫描 | SQL Server、Azure SQL、Synapse、Cosmos DB、Oracle、PostgreSQL、MySQL、Teradata | 100 多种连接器,涵盖所有主流 RDBMS、NoSQL 和数据仓库 | 200 多种连接器,提供与 SaaS 应用的预构建集成 | S3、DynamoDB、RDS(通过 Lambda) |
| 非结构化数据扫描 | SharePoint、OneDrive、Exchange、Azure Blob、Azure Files、AWS S3、GCP Storage | 文件共享、电子邮件、SharePoint、云存储、Slack、Teams、Confluence | 文件共享、电子邮件、云存储、协作平台 | S3 存储桶(主要关注对象) |
| 分类方法 | 300 多种内置敏感信息类型(SIT)、可训练分类器、精确数据匹配(EDM)、自定义正则表达式 | 基于 ML 的 NER、关联分析、模式匹配、自定义分类器 | 模式匹配、NER、上下文分析、自定义规则 | 基于 ML 的模式匹配、自定义数据标识符、托管数据标识符 |
| GDPR 专用分类器 | 欧盟国家身份证格式、欧盟护照号码、欧盟借记卡/信用卡号码、各成员国的欧盟税号 | GDPR 个人数据分类体系、第 9 条特殊类别检测、跨法规映射 | 预构建的 GDPR 数据主体类型、目的映射、合法依据标记 | 欧盟个人数据标识符(有限,主要针对财务和身份模式) |
| 准确性调优 | 置信度级别(低/中/高)、自定义关键词词典、用于精确匹配的 EDM、文档指纹 | ML 模型再训练、反馈循环、置信度阈值、关联规则 | 置信度评分、验证规则、例外管理 | 使用正则表达式和关键词邻近度的自定义数据标识符、严重性评分 |
| 部署模式 | SaaS(Microsoft 365/Azure),与 Purview 治理结合的混合部署 | SaaS、本地部署、混合部署 | SaaS、本地部署 Agent | AWS 原生 SaaS |
| 定价模式 | 按信息保护单元(Azure)计费,按 Microsoft 365 许可证层级计费(E5 包含高级功能) | 按数据源连接器、按扫描 TB 数计费 | 按数据源模块、按连接器计费 | 按评估的 S3 存储桶、按扫描 GB 数计费 |
实施模式 — Microsoft Purview
架构
Data Sources Microsoft Purview
┌─────────────┐ ┌───────────────────────────┐
│ Azure SQL │──────scanner──►│ Data Map (metadata store) │
│ SharePoint │──────scanner──►│ Data Catalog (search/tag) │
│ AWS S3 │──────scanner──►│ Data Estate Insights │
│ On-prem SQL │──self-hosted──►│ Information Protection │
│ Power BI │──────scanner──►│ Data Loss Prevention (DLP) │
└─────────────┘ └───────────────────────────┘
Vanguard Financial Services 的配置步骤
步骤 1:注册数据源
- 注册所有 Azure SQL 数据库、SharePoint 站点和 Azure Blob Storage 账户
- 为本地 SQL Server 和文件共享安装可自托管集成运行时
- 通过跨云连接器注册 AWS S3 存储桶
- 注册 Power BI 工作区,以扫描报告级别的敏感性
步骤 2:配置扫描规则
- 为所有欧盟司法管辖区启用内置敏感信息类型(SIT):
- 英国国民保险号码(模式:
[A-CEGHJ-PR-TW-Z]{2}\d{6}[A-D]) - 欧盟护照号码(依据各成员国格式)
- 国际银行账户号码(IBAN)
- 欧盟税务识别号码
- 欧盟健康保险卡号码
- 英国国民保险号码(模式:
- 为 Vanguard 专用标识符创建自定义 SIT:
- 客户账户号码格式:
VFS-\d{10} - 员工 ID 格式:
EMP-[A-Z]{2}\d{6} - 投资组合引用编号:
PF-\d{8}-[A-Z]{2}
- 客户账户号码格式:
- 配置信心水平:直接标识符设为 HIGH,间接标识符设为 MEDIUM,情境匹配设为 LOW
- 为客户姓名验证启用精确数据匹配(EDM),并与 CRM 数据库进行核对
步骤 3:设置扫描计划
- 完整扫描:每月一次(每月第一个星期六,02:00 UTC)
- 增量扫描:每周一次(每周六,02:00 UTC)
- 按需扫描:由新数据源注册或事件响应触发
- 预计扫描时长:扫描 15 TB 数据的完整扫描需 8 小时
步骤 4:配置敏感度标签
- 将 Purview 敏感度标签映射到 Vanguard 分类级别:
Public→ Purview 标签:PublicInternal→ Purview 标签:GeneralConfidential→ Purview 标签:ConfidentialRestricted→ Purview 标签:Highly Confidential(自动应用于 Art. 9/Art. 10 数据)
- 启用自动标注策略:根据检测到的 SIT 应用标签
- 配置标签继承:子项继承父容器标签,除非其标签级别更高
步骤 5:DLP 策略集成
- 创建由敏感度标签触发的 DLP 策略:
- Restricted 数据:阻止外部共享、要求加密、通知 DPO
- Confidential 数据:外部共享时发出警告、记录审计日志、要求说明理由
- Internal 数据:仅记录审计日志
- 为 Windows 设备配置端点 DLP(防止复制到 USB、打印或截取 Restricted 内容的屏幕截图)
Purview 准确性调优
| 问题 | 调优方法 |
|---|---|
| 误报:英国电话号码被标记为国民保险号码 | 将 NINO SIT 的最低置信度提高到 HIGH;添加负向关键词列表("phone"、"tel"、"fax"、"mobile") |
| 误报:内部参考编号被标记为账户号码 | 为实际客户账户创建 EDM 架构;创建与客户相关关键词邻近匹配的自定义 SIT |
| 漏报:自由文本邮件正文中的健康数据 | 启用健康内容可训练分类器;使用来自职业健康往来邮件的 50 个以上正例样本进行训练 |
| 漏报:研究数据集中的遗传标识符 | 为 rs 编号模式(rs\d{4,12})、ICD-10 代码和 HUGO 基因名称创建自定义 SIT |
实施模式 — BigID
架构
BigID 使用基于关联分析的分布式扫描架构来发现数据:
Data Sources BigID Platform
┌─────────────┐ ┌──────────────────────────┐
│ Databases │──scan───►│ Discovery Engine │
│ File Shares │──scan───►│ Correlation Engine (ML) │
│ Cloud │──scan───►│ Classification Engine │
│ SaaS Apps │──API────►│ Catalog & Inventory │
│ Email │──scan───►│ Privacy Rights Automation │
└─────────────┘ └──────────────────────────┘
关键差异化优势:基于关联分析的身份解析
BigID 基于机器学习的关联引擎通过关联不同来源的数据元素来构建身份档案,从而识别个人数据。这种方法能够检测出仅靠模式匹配无法发现的个人数据,例如一个系统中的客户 ID 与另一个系统中的姓名相关联。
Vanguard 配置
- 数据源连接:配置 Salesforce CRM、Workday HR、ADP Payroll、SharePoint、Azure SQL、AWS S3、本地 Oracle Data Warehouse 的连接器
- 关联规则:启用跨 CRM 客户 ID、HR 员工 ID 和工资员工编号的身份关联
- 分类策略:将 BigID 分类器映射到 GDPR 类别(个人数据、特殊类别、犯罪数据、假名化数据、匿名化数据)
- 扫描计划:每天 01:00 UTC 执行增量扫描;每周重建一次完整关联
实施模式 — OneTrust DataDiscovery
架构
OneTrust 将发现功能集成到其更广泛的隐私管理平台中:
Data Sources OneTrust Platform
┌─────────────┐ ┌──────────────────────────┐
│ Cloud/SaaS │──API────►│ DataDiscovery Module │
│ Databases │──agent──►│ Data Mapping (Art. 30) │
│ File Shares │──agent──►│ Assessment Automation │
│ Endpoints │──agent──►│ Consent Management │
└─────────────┘ │ DSAR Automation │
└──────────────────────────┘
主要差异化优势:隐私计划集成
OneTrust 的价值主张在于将发现结果与隐私计划管理紧密集成:发现的个人数据会直接流入 Art. 30 记录、DPIA 评估和 DSAR 履行工作流。
Vanguard 配置
- 数据源清单:使用 OneTrust 的数据映射问卷建立基线,然后部署自动扫描进行验证和补充
- 与 RoPA 集成:将发现的数据类别映射到 Art. 30 处理活动记录
- DSAR 集成:配置发现结果,以支持自动履行数据主体访问请求(在各个系统中定位给定身份的所有数据)
- 供应商发现:扫描与第三方处理者共享的个人数据;与供应商管理记录进行核对
实施模式 — AWS Macie
架构
Macie 专为在 AWS 中发现 S3 数据而构建:
AWS Environment
┌─────────────────────────────────────┐
│ S3 Buckets ──scan──► Macie │
│ │ │
│ EventBridge ◄──alerts──┘ │
│ Security Hub ◄──findings──┘ │
│ CloudWatch ◄──metrics──┘ │
└─────────────────────────────────────┘
Vanguard 配置
- 存储桶选择:为 eu-west-1(伦敦)和 eu-west-2(爱尔兰)区域中的所有 S3 存储桶启用 Macie
- 自定义数据标识符:为 Vanguard 特定模式(客户账号、员工 ID、投资组合引用)创建标识符
- 托管标识符:启用所有欧盟区域托管数据标识符(英国 NINO、IBAN、欧盟护照)
- 作业计划:每周执行计划分类作业;对高敏感度存储桶,在上传新对象时触发事件驱动扫描
- 调查发现集成:将调查发现发送到 AWS Security Hub 以进行集中监控;触发 Lambda 函数自动应用标签
扫描计划最佳实践
| 扫描类型 | 频率 | 时长窗口 | 触发方式 |
|---|---|---|---|
| 完整发现扫描 | 每月 | 周末维护时段(8-12 小时) | 计划触发 |
| 增量扫描 | 每周 | 非高峰时段(2-4 小时) | 计划触发 |
| 新数据源接入扫描 | 注册时 | 数据源注册后 48 小时内 | 事件驱动 |
| 事件后扫描 | 按需 | 立即(针对特定范围) | 事件响应 |
| DPIA 前扫描 | DPIA 开始前 | DPIA 启动前 1-2 周 | 项目触发 |
准确性指标与调优
关键绩效指标
| 指标 | 目标 | 测量方法 |
|---|---|---|
| 精确率(真阳性率) | > 90% | 每月抽样检查 100 个已分类项;验证分类准确性 |
| 召回率(检测率) | > 85% | 在扫描范围内植入已知 PII 测试数据;测量检测率 |
| 假阳性率 | < 10% | 统计被归类为个人数据但实际并非个人数据的项 |
| 假阴性率 | < 15% | 统计扫描器遗漏的个人数据项 |
| 分类一致性 | > 95% | 同一数据元素在重复扫描中分类一致 |
持续改进周期
Month 1: Baseline scan → establish initial accuracy metrics
Month 2: Review false positives/negatives → tune rules and thresholds
Month 3: Re-scan → measure improvement
Month 4: Expand scope (new data sources) → re-baseline
Month 5: Review edge cases → create custom classifiers
Month 6: Accuracy audit by DPO → formal accuracy report
[Repeat cycle]
集成点
- data-inventory-mapping:自动化发现结果可填充第 30 条数据清单
- pii-in-unstructured:针对非结构化数据的专用技术可增强平台能力
- data-labeling-system:发现结果可驱动自动应用标签
- classification-policy:发现结果可验证是否符合分类策略级别
- data-lineage-tracking:将发现结果与数据沿袭相结合,可实现完整的数据可见性