5

我想编写一个脚本,可以在文件系统中搜索和报告个人身份信息,如卡号等。我想在 txt 以及 xls word 和 PDF 文件中找到它。

欢迎任何入门技巧或使用哪个库。

我还想就一种有效的方法来扫描大文件以查找信用卡等模式的建议。

4

3 回答 3

5

试一试piianalyzer: https ://pypi.python.org/pypi/piianalyzer/0.1.0

或者您可以自己编写并使用常见的正则表达式数据集,例如 https://github.com/madisonmay/CommonRegex

于 2015-10-17T02:11:03.507 回答
1

如果您在一家公司工作,您可以考虑购买打包解决方案。我看到的一个广告是 Nuix。此外,Oracle 为 GDPR(新的欧盟隐私法)提供端到端解决方案,其中包括您描述的那种功能。请参阅http://www.oracle.com/technetwork/database/security/wp-security-dbsec-gdpr-3073228.pdf

如果您拥有 Oracle RDBMS,则有一个名为 CTXSYS(现在称为 Oracle Text)的包,它具有跨文档的惊人搜索功能,包括 PDF、整个 Office 套件等等。CTXSYS 包含在常规许可证中。如果您是家庭用户,您可以下载 Oracle 服务器(Express 版本适合此功能)。

如果您按照上面的建议使用正则表达式,一种简单的方法是搜索在句子中间大写的单词,但这仅对文档有帮助(例如,对 XLS 没有多大帮助)。您还可以建立一个常用名字典(名字/姓氏、街道、城镇)。信用卡和 SSN 应该很容易进行正则表达式。

于 2017-11-05T14:04:24.573 回答
0

我们正在实施一个类似的系统,该系统允许从动态表单和 CSV 导入中输入数据。字段将被分类为列表、数字范围、自由文本。数据最终出现在数据库表的一个字段中。我们正在扫描自由文本条目以查找 PHI。数据通过网站输入并存储在 SQL Server 中。我们启动一个命令,将任何新导入批次的 id 添加到 RabbitMQ 队列,并将批次中的所有自由文本字段标记为待检查,以防止它们被显示或导出。所有被视为“安全”的字段,例如从下拉列表或基于数字范围的字段都可以导出或显示在图表中。只有自由文本字段被临时锁定。然后,python Windows 服务从 Rabbit 队列中提取并扫描每个文本字段以查找 PHI 并相应地标记它们。如果有看起来可疑的字段,我会收到一份报告并手动检查整个文本导入批次。我目前正在使用Spacy用于实体识别,以及Deuce方面以查找其他 PHI 类型。

由于分析是异步进行的,因此我能够通过多种扫描方法对数据进行处理,而不会影响性能。

于 2018-06-09T09:52:52.103 回答