返回博客GDPR 与合规

Presidio遗漏220余种GDPR实体:欧盟覆盖缺口

Presidio默认附带约40个实体识别器,主要面向美国标识符。欧洲组织需要识别IBAN、Codice Fiscale等220余种欧盟实体,而Presidio默认不支持这些类型。

June 13, 20267 分钟阅读
Presidio entity coverageEU GDPR PIIIBAN detectionEuropean identifiersPresidio vs managed

2026年更新版

微软Presidio默认附带约40个实体识别器。对于美国部署场景,这基本够用——涵盖社会安全号码(SSN)、美国护照、驾照、信用卡和电子邮件。

对于欧盟部署场景,缺口相当大。GDPR覆盖所有欧盟个人数据,无论数据主体的国籍如何。欧盟团队需要Presidio默认不提供的识别器。

Presidio的默认覆盖范围

Presidio的默认识别器分为四大类。

以美国为中心的ID:

  • 美国社会安全号码(SSN)
  • 美国护照号码
  • 美国驾照号码
  • 美国银行账号
  • 美国个人纳税识别号(ITIN)
  • 美国医疗执照号码

通用ID:

  • 电子邮件地址
  • 电话号码
  • IP地址
  • 信用卡号码
  • 加密钱包地址
  • URL

基于NER的文本实体:

  • PERSON(人名)
  • LOCATION(地名)
  • ORGANIZATION(机构名)
  • DATE_TIME(日期时间)

有限的国际支持:

  • 英国NHS号码
  • 英国国民保险号(NINO)
  • 部分金融标识符

合计:约40个识别器。

欧盟团队的实际需求

金融ID

IBAN出现在大多数欧盟商业文件中,见于付款通知、发票和薪资单,遵循ISO 13616标准。Presidio无IBAN识别器。

以德国一家金融科技公司为例,每份付款文件都包含IBAN。没有IBAN检测,工具只能识别信用卡号,欧盟主流支付标识符就此遗漏,意味着一类关键的GDPR覆盖数据永远不会被发现。

国家税号

以下税号均不在Presidio的默认支持范围内:

  • 德国税号(Steueridentifikationsnummer): 11位数字
  • 法国社会保障号(NIR): 15位数字含校验码
  • 意大利财政代码(Codice Fiscale): 16位字符含校验和
  • 西班牙国家身份证号(NIF/NIE): 9位字符含字母
  • 荷兰公民服务号(BSN): 9位数字含elfproef校验

欧盟薪资团队处理多个成员国的文件时,若缺少这些识别器,将错过记录中最敏感的身份标识。

国家医疗ID

英国NHS号码已被支持,但以下ID不在覆盖范围内:

  • 法国社会保障号(NIR,同时也是医疗ID)
  • 德国法定医保号(Krankenkassennummer)
  • 意大利财政代码(Codice Fiscale,同时也是医疗ID)
  • 荷兰公民服务号(BSN,用于医疗保险)

欧盟医疗团队需要这些ID才能实现GDPR级别的数据保护。

欧盟驾照

欧盟驾照受2006/126/EC指令约束,每个成员国格式各异,字母数字结构因国而异。Presidio仅有美国驾照识别器,不支持欧盟驾照格式,导致欧盟驾照数据在处理中无法被检测到。

增值税号(VAT)

欧盟增值税号出现在每笔B2B交易中,格式为2位国家代码加8—12位数字,Presidio无VAT识别器。VAT号关联公司及其所有者,在GDPR框架下属于个人数据。

更多GDPR合规义务相关信息,参阅GDPR合规资源。

自定义识别器的成本

当欧盟团队发现这一缺口时,往往选择自行构建识别器,这需要付出真实的时间代价。

每个识别器的时间估算(粗略):

  • 研究格式规范:1—2小时
  • 编写Python类:2—4小时
  • 构建正则表达式和校验逻辑:2—4小时
  • 添加上下文关键词:1—2小时
  • 编写测试:2—3小时
  • 部署和验证:1—2小时

每个识别器约需9—17小时,以上为粗略估算。

示例:德国金融科技公司需要四个识别器

IBAN、德国税号(Steuer-ID)、欧盟驾照、德国增值税号。

  • 4个识别器 × 每个约13小时 = 52小时工作量
  • 按每小时100欧元计算:约5,200欧元

这只是初次构建的成本。格式会随时间变化,新的边缘情况会出现,Presidio API更新可能导致已有代码失效,每次变更都需要开发人员介入审查和修复,年复一年累积额外成本。

托管实体库

anonym.legal在Presidio基础上扩展至273种以上实体类型,由团队持续维护,欧盟标识符从第一天起即可使用。

超出Presidio默认支持的部分包括:

  • 所有欧盟成员国格式的IBAN
  • 成员国税号:Steuer-ID、NIR、Codice Fiscale、NIF/NIE、BSN、PESEL等
  • 欧盟国家医疗ID
  • 欧盟格式增值税号
  • 欧盟驾照格式
  • 欧洲护照格式
  • 支持的48种语言下的实体变体

当德国更新税号格式时,更新随服务同步发布,无需团队提交Pull Request。

对于库中未包含的ID类型,自定义实体构建器允许添加自定义规则,无需编写Python代码。

参阅安全与合规详情,了解更新机制和审计追踪的工作方式。

德国金融科技公司示例

某德国金融科技公司需要在客户文件中检测IBAN、BIC、Steuer-ID和商业登记号(Handelsregisternummer)。

Presidio对这四种类型的默认检测率:0%。

这四种类型均不在默认库中。这不是精准率低的问题,而是零检测——工具不是部分遗漏这些数据,而是完全看不见它们。

成本对比:

方案第一年成本
自定义识别器(4个 × 13小时 × 100欧元/小时)~5,200欧元,另加持续维护成本
托管实体库(专业版计划)180欧元/年,四种类型均已覆盖

第一年差距约为29倍,此后每年的自定义维护成本持续累积,而托管服务价格保持不变。

结语

Presidio的默认配置能够很好地服务美国用例,但对于GDPR框架下的欧盟部署,覆盖明显不足。弥补这一缺口要么需要自定义识别器开发工作,要么需要使用托管服务。

对于合规要求明确、工程资源有限的欧盟团队,预构建的欧盟实体库免去了50余小时的开发工作量,文件从第一天起即可处理,无需事先编写任何自定义代码。

参考来源

准备好保护您的数据了吗?

开始使用 273 种实体类型在 48 种语言中匿名化 PII。