我所拥有的:弹性搜索数据库,用于全文搜索。
我的要求是:在给定的elasticsearch索引中,我需要检测到一些敏感数据,如iban no、信用卡号码、护照号码、社会保险号码、地址等,并向客户报告。将有复选框作为输入参数。例如,客户可以选择信用卡号码和护照号码,然后单击“检测”按钮。之后,系统将开始扫描索引,并报告包括信用卡号码和护照号码在内的文件。它的目标是拥有200多个敏感数据类型,并且客户端将能够对这些类型进行多次选择。
我所做的:,我创建了一个C#应用程序,并使用Nest库进行ES查询。为了检测每种敏感数据类型,我在我的C#应用程序中创建了正则表达式和一些特殊的验证规则,这对于手动给定的输入字符串非常有效。
在我的C#应用程序中,我用滚动api创建了一个match all查询。当用户单击“检测”按钮时,我的应用程序将迭代从滚动api返回的所有源记录,对于每个记录,应用程序将根据客户端的选择执行敏感的数据查找程序代码。
这里的问题是搜索ES索引中的所有源记录,提取敏感数据,并尽可能快地用大量的文档编写报告。我知道ES是为全文搜索而设计的,而不是用来扫描整个系统和带来数据的。然而,现在所有的数据都在elasticsearch中,我需要使用这个db来执行检测操作。
我想知道我能否以一种不同和有效的方式做到这一点。这个问题可以通过编写一个没有C#应用程序的弹性搜索插件来解决吗?还是有更好的解决方案来扫描ES索引中的全部源数据?
谢谢你的建议。
发布于 2020-10-05 06:38:37
在这种情况下,
https://stackoverflow.com/questions/64199083
复制相似问题