Elasticsearch中的身份validation
如何在Elasticsearch中定义安全访问? 我有elasticsearch-head插件,但您的访问不需要任何安全性。
这个答案中提到的插件不再被积极支持。
elasticsearch中没有内置的访问控制。 所以,你需要设置一个反向代理(这里是一个博客文章如何设置nginx),使用第三方弹性search插件之一,如https://github.com/Asquera/elasticsearch-http-basic或使用官方安全插件盾; 。
Elasticsearch现在有安全插件http://www.elasticsearch.org/blog/shield-know-security-coming-soon/
更新 :这工作相当不错,是(对于mostefunction)自由和开源: https : //github.com/floragunncom/search-guard
注:本文中提到的插件不再被维护
也许这有助于: https : //github.com/salyh/elasticsearch-security-plugin
这个插件将Elasticsearch的http / rest安全function添加到独立模块中。 使用embedded式Tomcat 7代替Netty来处理http / rest请求。
目前用于基于用户的身份validation和授权Kerberos和NTLM通过第三方库华夫cookies支持(仅在Windows服务器上)。 对于UNIX服务器,通过第三方库tomcatspnegoad支持Kerberos(与任何kerberos实现一起工作,对于授权,Active Directory和通用LDAP都是支持的)。
您也可以在不使用Kerberos / NTLM的情况下使用此插件,但只有基于主机的身份validation可用。
<shamelessPlug>
对不起,但我对所有这些插件和代理的严重怀疑,只是尝试捕获在HTTP级别的马虎正则expression式的查询。
你会将可能执行写入的所有可能的ES语法正则expression吗? 你如何按索引过滤? 如何索引别名? 多索引查询?
进行访问控制的唯一干净方式是AFTER ElasticSearchparsing了查询。 这正是盾所做的!
我写了一个麻省理工学院许可的插件( readonly-rest-plugin ),就是这样做的。
你可以通过以下方式匹配
-
✔️主机名称,IP和IP与networking掩码
-
✔️索引(支持通配符)和索引别名已解决
-
✔️HTTP基本身份validation
它也有一stream的支持Kibanaauthentication:)
</shamelessPlug>
如果你想使用Kibana3的基本authentication,这是我的解决scheme:
https://github.com/fangli/kibana-authentication-proxy
不仅支持basicAuth ES后端,还支持客户端的GoogleOAuth和BasicAuth。 请给一个星星,如果它适合你,谢谢。
试试盾牌 。 它具有authentication和授权。 目前它需要一个许可证。 人们在创build类似的开源插件之前不会太长。
关于这个问题的一个具体的解决scheme,我碰到了以下其他答案中提到的反向代理方法的简单实现:
https://gist.github.com/jpluscplusm/9227777
作为一个警告,看起来Elasticsearch本身至less有一些不认为nginx是最佳解决scheme,但我认为这取决于您的身份validation要求(RBAC,用户数量,索引数量,访问列表修改次数)。 对于一些用户(包括我自己),第一个例子就足够了。
http://www.elasticsearch.org/blog/restricting-users-kibana-filtered-aliases/
如果你发现你的需求细节没有被nginx满足,像这样的东西可能会工作: https : //github.com/lukas-vlcek/node.es
由于ElasticSearch是一种数据库服务,您可能不希望它公开。
我不信任插件为我做,所以我做了一个nginx代理。
本教程非常有用:
我是ElasticSearch的新手,但我觉得X-Pack插件应该在这里作为答案: https ://www.elastic.co/guide/en/x-pack/current/index.html
据我所知,X-Pack现在是保护ElasticSearch(以及更多)的事实上的标准,包括authentication。
是的,现在是通过插件X-Pack启用elasticsearch安全性的唯一可取方法。
https://www.elastic.co/guide/en/x-pack/current/xpack-introduction.html
这是一个多用途插件,适合安全使用,因为您也可以根据需要使用监控和configuration警报和通知。
由于它已经高度认识到,我相信elasticsearch将继续这个login。