将加密添加到Solr/lucene索引

Kew*_*y89 7 lucene encryption solr cryptography information-retrieval

我目前正在使用Solr对某些敏感记录执行搜索服务.

由于Solr/lucene通过在磁盘上以明文形式存储敏感信息的反向索引来提供快速搜索,因此需要加密这些索引文件,以便未经授权的人员无法通过绕过系统的安全性来访问它们.

我发现在Apache JIRA AES加密目录编解码器上打开了类似的补丁 ,用于索引级加密.

AES加密目录看起来很有希望但是这个补丁已经为lucene 3.1实现了,因为我使用的是较新的版本,我不确定这个补丁是否可以与lucene 5或更高版本一起使用.

我想知道是否有办法实现加密索引的安全措施,或者是否可以编写一些自定义插件,可以加密/解密I/O级别的索引(即FsDirectory)?

che*_*ffe 5

你分享的LUCENE-6966评论区的讨论真的很有趣。我会用Robert Muir 的句话推理,Solr 中没有任何东西,而且可能永远不会。

更重要的是,使用文件级加密,数据将以未加密的形式驻留在内存中,这对我们的安全团队来说是不可接受的,因此对我们来说是不可能的。

这很有说服力。你应该解雇你的安全团队!您正在浪费时间担心这个:如果您使用 lucene,您的数据将在内存中,以明文形式,以您无法控制的方式存在,对此您无能为力!

试图保证比“休息”更好的事情是一件严肃的事情,听起来您的团队已经超出了他们的能力。

因此,您应该考虑对 Solr 在操作系统级别使用的存储进行加密。这对于 Solr 应该是透明的。但是如果有人进入您的系统,他应该无法复制 Solr 数据。

这也是Lucidwors的Erick Erickson的文章Encrypting Solr/Lucene index最后得出的结论

简而言之,这是经不起审查的想法之一。如果您担心此级别的安全性,最好考虑其他选项,从保护您的通信渠道到使用加密文件系统,再到将您的系统从公共网络物理分离。当然,你应该永远,永远,让你的工作Solr的安装可以访问直接从外面的世界,只考虑以下几点:http://server:port/solr/update?stream.body=<delete><query>*:*</query></delete>