Сначала я объясню свою нынешнюю архитектуру. У меня есть экземпляр EC2, работающий с демоном Logstash, поскольку input
конфигурация http и как output
мой экземпляр AWS ElasticSearch.
Как я уже сказал, у меня есть экземпляр AWS ElasticSearch с Kibana, предоставленный AWS.
Так, например, в ES данные Logstash хранятся в индексе, а данные имеют структуру JSON, например:
{
"country": 01,
"field1": "foo",
"field2": "bar
}
В моем Kibana я создал панель инструментов, чтобы показать информацию, которую я сохранил, с графиками и т. Д.
На данный момент я настроил AWS ES Security с политикой IP-доступа. Итак, мой вопрос: у меня будут разные пользователи, которые будут иметь доступ к этой Kibana, и эти пользователи из разных стран, и каждый пользователь может видеть только свои country
данные.
Я читаю об AWS Cognito, чтобы сделать более подробную настройку Kibana с использованием пользователей IAM, но я думаю, что этого недостаточно для достижения моей цели.
Я читаю о различиях между сервисом AWS ElasticSearch и ElasticSearch, предоставляемым облаком elastic.co. В настоящее время я думаю, что, возможно, мне нужно будет сменить облачного провайдера ...
Есть ли возможность настроить пользователей Kibana в AWS ES по мере необходимости?
И, если пользователи AWS IAM и Cognito вместе не подходят для меня, возможно, менее радикальное решение, как изменение облака AWS на Elastic.co, могло бы использовать мой собственный экземпляр Kibana (не использовать AWS ES Kibana), например, установленный в EC2?
Я решил это сам. Когда я пробую пробную версию elastic.co и запускаю Kibana, я вижу гораздо больше функциональности, чем в AWS, и я могу управлять пользователями, создавать и назначать роли, ограничивать использование пользователем определенного шаблона индекса и использовать пробелы для разных типов. пользователей я буду потреблять Kibana.
Итак, сервис AWS ElasticSearch больше похож на условно-бесплатную версию ... Amazon Cognito не решает мои нужды, на данный момент невозможно использовать сервис AWS ES.
Итак, используйте elastic.co PaaS, это определенно мое решение.