Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Guide [7.17] ›SQL

Безопасность

Elasticsearch SQL интегрируется с безопасностью, если она включена в вашем кластере. В таком случае Elasticsearch SQL поддерживает безопасность на транспортном уровне (путем шифрования связи между потребителем и сервером) и аутентификацию (для доступа к данным).

Настройка SSL/TLS

В случае зашифрованного транспорта необходимо включить поддержку SSL/TLS в Elasticsearch SQL для правильного установления связи с Elasticsearch. Это делается путем установки свойства ssl в значение true или использованием префикса https в URL.
В зависимости от вашей настройки SSL (подписаны ли сертификаты центром сертификации, являются ли они глобальными на уровне JVM или локальными для одного приложения), может потребоваться настройка keystore и/или truststore, в которых хранятся кредициальные данные (keystore – который обычно хранит закрытые ключи и сертификаты) и как их проверять (truststore – который обычно хранит сертификаты от третьих сторон, также известных как ЦС – центры сертификации).
Обычно (и опять же, обратите внимание, что ваша среда может значительно отличаться), если настройка SSL для Elasticsearch SQL еще не выполнена на уровне JVM, необходимо настроить хранилище ключей, если безопасность Elasticsearch SQL требует проверки подлинности клиента (PKI – инфраструктура открытых ключей), и настроить truststore, если SSL включен.

Аутентификация

Поддержка аутентификации в Elasticsearch SQL состоит из двух типов:

Имя пользователя/Пароль
Установите их с помощью свойств user и password.
PKI/X.509
Используйте сертификаты X.509 для аутентификации Elasticsearch SQL для Elasticsearch. Для этого необходимо настроить keystore, содержащий закрытый ключ и сертификат для соответствующего пользователя (настроенного в Elasticsearch), и truststore с сертификатом ЦС, используемым для подписания сертификатов SSL/TLS в кластере Elasticsearch. То есть, необходимо настроить ключ для аутентификации Elasticsearch SQL и также убедиться, что это нужный ключ. Для этого необходимо установить свойства ssl.keystore.location и ssl.truststore.location, чтобы указать keystore и truststore для использования. Рекомендуется защищать их паролем, в этом случае требуются свойства ssl.keystore.pass и ssl.truststore.pass.

Разрешения (на стороне сервера)

Наконец, на сервере необходимо добавить несколько разрешений пользователям, чтобы они могли выполнять SQL-запросы. Для выполнения SQL-запросов пользователю необходимо минимум разрешение read и indices:admin/get, в то время как некоторые части API требуют cluster:monitor/main.

Следующий пример настраивает роль, которая может выполнять SQL-запросы в JDBC, обращаясь к индексам test и bort:

cli_or_drivers_minimal:
  cluster:
    - "cluster:monitor/main"
  indices:
    - names: test
      privileges: [read, "indices:admin/get"]
    - names: bort
      privileges: [read, "indices:admin/get"]

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/sql-security.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API