2017-06-29 77 views
0

我们需要能够搜索到很多的个人身份信息。我们正在考虑使用ElasticSearch,但它存储原始文档的问题存在问题。索引上的敏感数据

有没有办法来索引中的字段,而不是存储领域?在这种情况下,如果我们遇到了一条记录,我们将返回dynamoDB中包含原始文档的记录的GUID或更可能是加密的GUID。但是如果有人设法掐ES数据库,他们不能轻易重建原始信息。

谢谢,

亚当。

+0

你有没有考虑散列这些敏感字段?这是单向操作,所以不应该重建。但是如果你有散列键,你仍然应该能够搜索必要的字段。 –

+0

@Tofig。感谢您的回应。并不是说文档中的某些部分可以被删除;我们有我们想通过一些过滤器(如词干过滤器)的文本块,所以我们可以在它上面做全文搜索,但不希望将文档本身,它已经建立索引后保存。我解释了那好吗? –

+0

啊,我明白了。那么我猜哈希将无法工作。但是,自ElasticSearch的5.3版本以来,它支持使用dm-crypt进行磁盘级加密。那可以帮助吗? –

回答

1

就找到了答案:https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-source-field.html

您可以禁用存储原始源文件,只具有指数 - 正是我想要的。当然,我们将把原始文档存储在亚马逊的DyanmoDB中 - 加密。 ES索引将允许我们在不存储原始文档的情况下执行我们想要的搜索。

的ES文件的浏览做压力仔细考虑这种做法 - 比如,如果我们需要重新编制索引,我们就一定要好好的东西展现出来迪纳摩,再次喂养它通过ES。

作为一个侧面说明,我们最近一直在AWS峰会,他们鼓励我们在室壁运动看成流水线为索引的文档,然后将它们存储在DynamoDB。

Adam