我们的团队目前使用Solr作为我们搜索解决方案的后端,我们目前正在考虑为其添加一些安全约束。我们目前正在研究可能包含的不同安全级别:
1)数据集/核心级安全性:阻止未授权用户访问整个索引 2)现场级安全性:某些字段被阻止访问 3)文档级安全性:某些文档被阻止访问。
到目前为止,我的研究表明,大多数人已经为Solr实现了基于URL路径的安全性,但似乎没有任何人有如上所述的更精细安全性的经验。我们当前的用例是在支出分析市场中,需要以不同的粒度级别严格控制对数据集的访问。
根据我们目前所发现的情况,我们的问题是:
1)是否可以扩展Solr以便透明地处理这些不同级别的安全性?或者我们应该考虑在搜索应用程序中控制所有这些? 2)是否有任何类似的扩展或包装?
提前感谢您的帮助!
答案 0 :(得分:4)
正如您已经发现的那样,Solr目前不实现任何类型的文档级安全性。大多数人使用简单的过滤查询处理HTTP级别或应用程序级别的安全性。显然,在这种情况下,Solr访问仅限于此应用程序,例如,使用HTTP身份验证。
尽管如此,在实施文档级安全性方面还有一些努力:SOLR-1834和SOLR-1872。这些补丁已有一年多的历史了,因此将它们应用到最新版本的Solr可能很麻烦。
另见关于该主题的讨论:
答案 1 :(得分:0)
我意识到这是一个古老的问题,但是自从被问到这个问题以来,Solr没有很多(任何?)进展来帮助解决这个问题。在http://www.searchtechnologies.com/search-engine-security.html处有一篇很好的一般性文章处理同样的问题;它没有规定具体的实施,但讨论了不同方法的利弊,值得一读。