我希望设置一个具有多个用户/密码的logstash管道,并使用不同的用户名将输出定向到不同的elasticsearch索引,其中每个用户名都具有对特定索引的读/写访问权限,因此相同的凭据也可以在Kibana上使用。就像这样-
input {
http {
host => "0.0.0.0"
port => 5000
user => "user1","user2"
password => "password1","password2"
}
}
output {
if[user] == "user1" {
elasticsearch {
id => "elastic1"
hosts => ["localhost:9200"]
index => "index1"
user => "user1"
password => "password1"
}
}
else if[user] == "user2" {
elasticsearch {
id => "elastic2"
hosts => ["localhost:9200"]
index => "index2"
user => "user2"
password => "password2"
}
}
}这个是可能的吗?我遗漏了什么?
发布于 2020-04-04 21:46:12
Logstash支持基本身份验证,但每个HTTP插件实例只接受一个用户名-密码。它不支持传递用户名/密码列表:
http {
port => 3332
user => myuser
password => "$tr0ngP4ssWD!"
ssl => on
keystore => "/tmp/mykeystore.jks"
keystore_password => "keystore_pass"
}阅读HTTP插件的官方文档:https://www.elastic.co/guide/en/logstash/current/plugins-inputs-http.html#plugins-inputs-http-user
https://stackoverflow.com/questions/61016614
复制相似问题