Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Руководство [8.17] ›Защита Elastic Stack ›Аутентификация пользователей

Услуги аутентификации на основе токенов

Функции безопасности Elastic Stack аутентифицируют пользователей, используя области (realms) и один или несколько сервисов аутентификации на основе токенов. Сервисы аутентификации на основе токенов используются для аутентификации и управления токенами. Вы можете прикрепить эти токены к запросам, отправляемым в Elasticsearch, и использовать их в качестве учетных данных. Когда Elasticsearch получает запрос, требующий аутентификации, он сначала обращается к службам аутентификации на основе токенов, а затем к цепочке областей.

Функции безопасности предоставляют следующие встроенные службы аутентификации на основе токенов, которые перечислены в порядке их обращения:

service-accounts

Учетные записи сервисов используют либо API для создания токена учетной записи сервиса, либо инструмент командной строки elasticsearch-service-tokens для генерации токенов учетных записей сервисов.

Для использования токена учетной записи сервиса добавьте сгенерированное значение токена в запрос с помощью заголовка Authorization: Bearer:

curl -H "Authorization: Bearer AAEAAWVsYXN0aWMvZ...mXQtc2VydmMTpyNXdkYmRib1FTZTl2R09Ld2FKR0F3" http://localhost:9200/_cluster/health

Не пытайтесь использовать учетные записи сервисов для аутентификации отдельных пользователей. Учетные записи сервисов могут быть аутентифицированы только с помощью токенов сервисов, которые не применимы к обычным пользователям.

token-service

Сервис токенов использует API для получения токена для генерации токенов доступа и токенов обновления на основе спецификации OAuth2. Токен доступа — это токен с коротким сроком действия. По умолчанию он истекает через 20 минут, но его можно настроить на максимальное время действия в 1 час. Он может быть обновлен с помощью токена обновления, срок действия которого составляет 24 часа. Токен доступа — это токен типа bearer. Вы можете использовать его, отправив запрос с заголовком Authorization со значением, содержащим префикс "Bearer " и значение токена доступа. Например:

curl -H "Authorization: Bearer dGhpcyBpcyBub3Qx5...F0YS4gZG8gbm90IHRyeSB0byByZWFkIHRva2VuIQ==" http://localhost:9200/_cluster/health
api-key-service

Сервис API-ключей использует API для создания API-ключей для генерации API-ключей. По умолчанию API-ключи не истекают. При создании API-ключа вы можете указать срок действия и разрешения для API-ключа. Разрешения ограничены разрешениями аутентифицированного пользователя. Вы можете использовать API-ключ, отправив запрос с заголовком Authorization со значением, содержащим префикс "ApiKey " и учетные данные. Учетные данные — это base64 кодирование идентификатора API-ключа и API-ключа, соединенные двоеточием. Например:

curl -H "Authorization: ApiKey VnVhQ2ZHY0JDZGJrU...W0tZTVhT3g6dWkybHAyYXhUTm1zeWFrd0dk5udw==" http://localhost:9200/_cluster/health

В зависимости от вашего случая использования, вы можете выбрать срок действия токенов, сгенерированных этими сервисами. Затем вы можете решить, какой сервис использовать для генерации и управления токенами. Неистекающие API-ключи могут показаться простым вариантом, но вы должны учитывать последствия для безопасности, связанные с неистекающими ключами. Как сервис токенов (token-service), так и сервис API-ключей (api-key-service) позволяют аннулировать токены. См. API для аннулирования токена и API для аннулирования API-ключа.

Поддержка аутентификации с использованием токенов JWT была добавлена в Elasticsearch 8.2 с помощью аутентификации JWT, которую нельзя включить через службы аутентификации на основе токенов. Области (realms) предоставляют гибкий порядок и конфигурацию нуля, одного или нескольких областей JWT.

© 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/8.17/token-authentication-services.html

Spec-Zone.ru

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