乐趣区

关于mongodb:MongoDB有哪些数据脱敏技术

为什么须要晓得覆盖技术?因为这是一种匿名化数据的办法,这样就能够应用蕴含敏感或个人信息的数据进行测试或开发。即便你负责的数据库具备齐全的访问控制和安全性,你也可能须要多种数据脱敏技术来反对应用程序。

例如,你可能须要动静脱敏数据以确保应用程序不会裸露不必要的敏感信息。或者,如果您须要对理论生产数据运行测试或开发,而理论生产数据蕴含集体或敏感信息,则可能须要脱敏实在数据。

如果你须要将生产数据推到一个安全性较低的环境,你也须要进行数据脱敏技术,为了散发报告或者剖析相应的数据,并且必须保留报告所须要的根底数据。

出于培训或用户测试的目标,常见的做法是生成看起来像实在数据的假数据。这是一个不同的过程,须要不同的技能。

为什么须要脱敏数据?

对于数据的各种规定实用于任何数据库、文件或电子表格。从法律的角度来看,在哪里保留数据并不重要。如果你是组织的一部分,你应该只能拜访适宜你在组织中角色的信息。如果你没有非法的理由拜访该数据,那么你必须无法访问该数据。

总结:

所有数据都必须以牢靠的形式进行治理,无论它在哪里保留。法律并不关怀你用什么办法存储数据,只有你这样做了。

如果蕴含可能获取集体的数据(PII 数据),它必须在任何时候都具备拜访限度。此外,法律提供了就如何匿名或伪匿名数据给出批示性倡议。它只是要求在适当的时候这样做。

法律要求不能在匿名数据中辨认任何集体或个人,即便它与其余数据源联合在一起。如何让数据实现这一指标是咱们所关怀的,而实现这一指标的技术在以后的法律中没有明确的定义。

如果能够通过从新辨认或去匿名化来辨认集体,那么数据就没有正确地匿名化。这种从新辨认技术多年来被执法机构和情报机构用于破解立功网络,能够必定的是,暗网也有同样的技术。

脱敏与 MongoDB

因为你保留和解决数据的形式与法律无关,MongoDB 和其余任何数据格式一样面临同样的挑战。

因为 MongoDB 在默认状况下不启用访问控制,所以第一个显著的步骤是提供基于角色的访问控制和数据库及服务器的安全性。

相干的浏览:MongoDB 平安提醒,以确保远离黑客

然而,任何文档数据,无论是非结构化文本、YAML、JSON 或 XML,对于负责将其匿名化的任何人来说都有特定的问题。除非蕴含模式和标准的办法,否则敏感数据可能存在于任何中央,并且能够在多个中央反复。

在具备“非规范化”或蕴含 XML 或 JSON 列的关系型构造数据中,可能会遇到同样的问题。如果进行查看,通常会发现雷同的数据存在于多个地位,并且其中两个数据具备雷同的名称,而疏忽对它们进行脱敏,那么就存在潜在的破绽。

MongoDB 基于汇合的概念。一个汇合,就像一个关系数据库表,蕴含一个或多个文档。每个文档都是一组键值对。

图片地址:

https://studio3t.com/wp-conte…

MongoDB 应用汇合、文档和键值对来结构数据

因为同一个汇合中的文档不须要具备雷同的字段集或构造,因而汇合文档中具备雷同名称的字段可能蕴含不同类型的数据。它们能够保留数组,其中能够蕴含各种类型的数据。

基本上,MongoDB 很少强制执行模式。这使得制作一个零碎的自动化脱敏程序变得更加艰难。

事实上,如果没有统一的模式,那么定义掩码的过程会变得十分简短。要实现屏蔽,能够应用 MongoDB 的只读非物化视图、字段级密文或字段级加密等技术。

视图是最简略的办法,因为它们基于聚合管道,因而能够创立相当简单的汇合筛选器。您须要将这些数据托管到生产数据库中,并应用它们导出脱敏后的数据。

然而,只管这些办法能够实现假名化,但它们须要大量的编程,假如对模式进行正当的强制执行,并且不能满足所有的需要。

假名化、匿名化、聚合、屏蔽和数据生成

有很多技术能够使数据匿名。最合适的抉择取决于您须要匿名化数据的起因。

如果为了开发工作的须要,那么任何敏感数据必须被脱敏。为了培训或用户测试,数据也必须是须要脱敏。为了测试数据的弹性和可伸缩性,数据生成来提供必要的办法。

聚合

如果数据是用于报告的,那么仅仅通过在报告所需的最低级别上,提供一个聚合就能够实现很大的成果。

例如,如果它是用于报告交易,而最具体的报告是对于一天的交易,那么数据只能提供每天的数据。

如果某些群体的人数较少,聚合的集体数据能够被从新辨认。这产生在凋谢数据医疗信息和立功记录上。

屏蔽

动静屏蔽不同于动态屏蔽,因为它是对数据查问的后果进行屏蔽。它只在目的地具备访问控制以避免长期查找 / 连贯的状况下无效。不同的数据库系统以不同的形式进行动静屏蔽,但 MongoDB 应用视图和编校投影技术。动静屏蔽的长处是它防止毁坏束缚数据的利用程序逻辑。

如果将放入理论的数字数据中,它可能会在 JSON Schema 中失败,因为它不再看起来像一个数字。

如果你有一个电话号码、邮政编码或卡号,状况就更简单了,因为如果违反了校验和或非凡的验证规定,那么用数字覆盖的数字的验证可能会失败。

假名化

假名化是一种数据覆盖技术,其中集体可能须要从新辨认。

例如,如果一家医院须要依据病史对某些病理或最佳医治的可能性进行剖析,则报告必须覆盖集体细节,以便从新辨认。

最显著的是,在必要的医疗信息中留下一个“代替”键,以取代集体 (PII) 信息,而后可用于从随后的报告中从新辨认个别患者。

如果个人信息“泄露”到医疗信息中,并且在法律上不认为这等同于匿名化,那么这种安全性就会被突破。

数据生成

数据生成用于应用程序测试和培训: 对于尚未公布的应用程序,它是惟一的办法。它可能看起来很简略,而且它可能只是字段中的信息可能是相干的。客户将失去逻辑统一的信息,可能是与性别相干的,约会可能须要在其余约会之前或之后,并将须要一个实在的跨度。

Studio 3T 中的数据屏蔽

Studio 3T 中的数据屏蔽是对其编辑和操作 MongoDB 数据能力的一个显著的扩大,它与它的“Reschema”性能无效地联合在一起。这将通知你许多对于数据地位的信息。

数据屏蔽由“工作”以与任何其余可反复作业雷同的形式实现,能够保留、调度和编辑。拜访屏蔽数据,右键单击要屏蔽的汇合,而后在呈现的上下文菜单中单击“屏蔽汇合”。

图片地址:

https://studio3t.com/wp-conte…

在 Studio 3T 的任意汇合上单击右键,抉择屏蔽汇合一个工作由一个或多个“单元”组成,每个单元治理一个汇合的屏蔽。一个“单元”容许您屏蔽整个汇合,并决定哪些字段应该混同。您能够屏蔽原始汇合,也能够将其保留为新汇合。

在它的第一个版本中,集中探讨了通常用于动态数据屏蔽的“屏蔽”技术。你还不能做混排,同步或替换。屏蔽的类型取决于字段的数据类型。

图片地址:

https://studio3t.com/wp-conte…

Studio 3T 中的“数据屏蔽单元”
能够从 20 种不同的数据类型中抉择一种,屏蔽或混同的类型取决于数据类型。

例如,数组能够被排除、空值或空对象。字符串局部或全副替换为散列 (#) 或星号 (*) 字符。整数能够与原始值不同,能够是原始值的一个变动百分比,也能够是原始值的一个固定百分比,或者能够用一个固定的值替换它们。

日期能够在您能够定义的范畴内给出一个随机值。

图片地址:

https://studio3t.com/wp-conte…

编辑字段映射并抉择数据屏蔽技术

这只有简略几个合乎模式的汇合的数据库, 因为每个字段是齐全独立实现的, 并没有为用户自行设定默认值,你须要抉择相干的办法,(例如, 一个整数的方差)这不是疾速的大型数据库。

这种屏蔽的第一次迭代对于大多数目标来说曾经足够了,然而如果它无效地执行了,您的数据看起来就不会那么丑陋,而且可能不会有雷同的散布。然而,它是无效的。

对于咱们这些对数据混同感兴趣的人来说,他们对混同文本的形式感到骄傲,这种形式使文本看起来像实在的数据,甚至通过束缚和模式验证规定。实际上,这只在培训、用户验收或性能测试中应用。

Studio 3T 提供的屏蔽性能在第一次迭代中提供了足够的性能,容许在一般开发工作和“上游”报告中屏蔽数据。

论断

当你开发、保护或测试一个数据驱动的应用程序时,如果有大量的数据,就会容易得多。许多问题,尤其是性能问题,只有在有大量数据的状况下才会浮出水面。通过在大型数据集上尝试各种想法,利用程序设计很快就失去了欠缺。

如果你有一个现有的应用程序,那么应用实时数据总是很迷人的,有时也是必要的。

屏蔽数据的性能必须是任何解决数据的开发人员的工具包的一部分。这有助于确保您负责任地解决实时数据。然而,它只是数据库开发人员的一个根本工具,用于满足业务依赖于数据的组织的需要。

为了满足社会的需要,它必须与数据生成、加密、聚合、访问控制一起应用,以爱护敏感和个人信息。

对于作者:管祥青

湖南大学研究生毕业,毕业后在海康威视研究院从事大数据研发及机器学习相干工作,当初就任于一家大数据金融公司。

参考网址:

https://studio3t.com/knowledg…

退出移动版