tes*_*rab 14 mysql testing linux
我正在寻找(最好是免费的、开源的)数据屏蔽工具。有这样的存在吗?
注意:这个相关问题涉及用于生成测试数据的工具,但在这个问题中,我更感兴趣的是从真实数据开始,并在不丢失任何特殊关系的情况下将其屏蔽以用于测试,而不会丢失任何使其对测试目的感兴趣的特殊关系。生成的数据适用于某些测试目的,但现实世界的数据会带来您从未想过的问题。 生成大型测试数据集的工具
如果有一个通用工具,我会感到非常惊讶 - 它如何“知道”什么是敏感数据,什么不是?例如,它需要检查您的所有数据并识别所有可能的信用卡号、电话号码、邮政编码、电子邮件地址以及任何其他被认为是敏感数据的格式。它还需要对您的架构保持智能——例如,它是否应该将所有客户电子邮件地址重写为“nobody@company.com”——或者您的数据库、应用程序、其他工具的任何部分是否假定客户的电子邮件地址(或 SSN 或什么)是独一无二的?或者您是否有应用程序的某些部分对信用卡号进行校验,如果您将它们全部重置为 0000 0000 0000 0000 会中断吗?或者您的电话系统是否假设客户'
基本上,配置任何工具来完成它与仅仅使用您对应用程序的知识编写自己的脚本一样多或更多的工作。在我的站点,我们只是制定了政策,任何添加包含此类数据的列的人都会更新脚本以同时对其进行匿名化,在初始审核以找到所有这些列并编写版本 1 之后。
小智 5
如果您的数据库很小,有一个简单的数据模型并且被当前的 DBA 很好地理解——脚本“可能”就是答案。然而,随着需求的变化、功能的添加以及开发人员/DBA 的来来往往,手动分析和屏蔽典型数据库的工作(和成本)很快就会失控。
虽然我不知道有任何开源数据屏蔽产品,但有一些商业产品可用,它们相当全面、相对易于使用并且成本可能非常合理。其中许多包括开箱即用的发现功能来识别和分类敏感数据(SSN、信用卡、电话号码)以及维护校验和、电子邮件地址格式、数据分组等的功能,以便屏蔽数据看起来和感觉真实。
但是你不必相信我(公认有偏见的)的话。询问行业分析师,例如 Gartner 或 Forrester,他们有许多关于掩蔽的公正报告,可能会有所帮助。
希望这些评论将鼓励您考虑探索商业产品以及内部脚本开发。归根结底,最重要的是保护我们中的许多人日复一日地看到的敏感数据,而我们在完成工作时确实不需要看到这些数据——将我们和那些个人我们持有风险的数据。
Kevin Hillier,Camouflage Software Inc. 高级集成专家。
从未见过这样的项目,但在我的时间里处理过一些敏感数据集,需要打乱的主要内容是人们的身份或个人识别信息。这应该只出现在数据库中的几个地方。
您的屏蔽操作应保留数据的统计属性和关系,并且可能需要保留实际参考代码(或至少某种受控转换机制),以便您可以将其与实际数据相协调。
这种事情可以通过获取字段中名称的不同列表并将其替换为类似 FirstNameXXXX(其中 XXXX 是一个序列号,每个不同的值一个)来实现。信用卡号和可用于身份盗窃的类似信息在开发环境中很可能是禁忌,但如果您正在测试支付处理系统,您只需要真实的信用卡号 - 通常供应商会给您特殊代码对于虚拟账户。
编写此类匿名程序并不是特别困难,但您需要与业务完全一致需要匿名的内容。如有必要,请逐个字段地浏览数据库。询问是/否会给您带来您不想要的误报。请业务代表解释不匿名特定数据的原因、后果或监管影响。
归档时间: |
|
查看次数: |
25589 次 |
最近记录: |