logstash使用shield进行身份验证错误

时间:2015-09-16 16:44:48

标签: elasticsearch logstash elasticsearch-plugin

尝试从logstash输出数据到弹性搜索时出现以下错误:

  

安装模板失败:[401]   {“error”:“AuthenticationException [无法验证用户身份   [es_admin] for REST request [/ _template / logstash]]“,”status“:401}   {:级别=>:错误}

我在logstash中有这样的配置:

esusers useradd <username> -p <password> -r logstash

我尝试使用以下命令添加用户:

localhost:9200

我也试过给角色管理员但是logstash也不适用于管理员用户。 transform: perspective正在询问密码,输入密码后它可以正常工作,但是logstash会出错。

2 个答案:

答案 0 :(得分:0)

我也有类似的问题。如果密码具有“@”符号,则存在elasticsearch的已知问题,可能会发生此问题。见以下链接:

https://github.com/logstash-plugins/logstash-output-elasticsearch/issues/232

还有一些关于elasticsearch的文档有指令在elasticsearch.yml中包含“shield”配置,但如果你只有一个屏蔽域,则不需要这样做。我在elasticsearch.yml中没有盾牌配置

答案 1 :(得分:0)

我看到您尝试使用logstash和admin用户但是失败了。

尝试使用管理员特权用户:

请确保您的/etc/elasticsearch/shield/roles.yml低于管理员角色的内容:

# All cluster rights
# All operations on all indices
admin:
  cluster: all
  indices:
    '*':
      privileges: all

然后测试如下的内容:

curl -u es_admin:es_admin_password localhost:9200/_cat/health

要使 logstash角色用户工作,需要在roles.yml上调整logstash角色。我将logstash配置为使用 admin特权用户写入elasticsearch。我希望这会有所帮助。