我经常在开发环境中使用生产数据进行测试。 但是,由于一些敏感数据,我需要进行数据匿名化。 我已经识别出敏感数据,例如名称,地址等......以及名称字段,例如, 我打算做一个更新,将值设置为随机值。 我想知道这是否是一种有效的数据匿名化方式。 有什么想法吗?
答案 0 :(得分:1)
还有一些其他可用的工具,但其中大多数非常昂贵。我们目前也在寻找解决方案。
如果您不想使用商业ETL工具,恕我直言,使用nifi并添加一些哈希函数可能是一个很好的解决方案。您会在这里找到nifi:https://nifi.apache.org/
但这仅对您有效,如果您能够编写自己的插件,例如在Java中。在搜索时,这个pdf-dokument对我了解真正必要的内容非常有帮助:http://www.odbms.org/wp-content/uploads/2014/03/The-Complete-Book-of-Data-Anonymization_Chap_1.pdf
另一个可能是编写自己的小型ETL工具,例如。使用Python或仅使用SQL(仅在连接源和目标相等时才起作用)。如果您不是开发人员,那么nifi可能不是一种帮助您的方法,并且与编写您自己的工具一样。在这种情况下,您应该寻找一种商业解决方案,但是在大多数情况下,对于开发和测试,我建议保持其体积小而简单。没有像informatica或ab initi这样的昂贵大笔交易。也许此工具/链接会有所帮助:
https://anno.io/
https://www.owasp.org/index.php/Anonymization https://open-ls.de/en/anonymization-knoxxer/
如果您要创建自己的解决方案,那就可以了。仅用于例如shellscript,然后访问SQL-Plus for Oracle。但这实际上取决于您要做什么。
答案 1 :(得分:0)
您可以按照建议手动执行此操作,方法是使用随机字符串替换个人信息。更好的是,如果你想为python维护一些有效库 internal static dynamic CurrentSlide
{
get
{
if (Globals.ThisAddIn.Application.Active == MsoTriState.msoTrue &&
Globals.ThisAddIn.Application.ActiveWindow.Panes[2].Active == MsoTriState.msoTrue)
{
return Globals.ThisAddIn.Application.ActiveWindow.View.Slide;
}
return null;
}
}
可以提供帮助。如果您以任何形式进行此操作,尽管硬编码解决方案最终会因架构更改而失败。
围绕将数据集匿名化的最佳方法还有一个bunch of mathematical theory,并且有大量敏感数据的例子被链接回个人。这通常是因为数据集未正确匿名或与公开数据相结合。但是,在测试中使用匿名数据肯定更安全。
我实际上正在开展第三方服务(https://anon.ai)以自动处理这个问题。我们目前仍在开发它,但生成一个测试数据库,其中任何个人信息被替换为配置的替代值将非常简单;
Pane
如果您希望尽早访问,请告诉我。