elasticsearch-service-tokens
Используйте команду elasticsearch-service-tokens для создания, перечисления и удаления токенов учетных записей сервиса на основе файлов.
Синтаксис
bin/elasticsearch-service-tokens ([create <service_account_principal> <token_name>]) | ([list] [<service_account_principal>]) | ([delete <service_account_principal> <token_name>])
Описание
Рекомендуемый способ управления токенами учетных записей сервиса — с помощью API токенов учетных записей сервиса и API создания токенов учетных записей сервиса. Токены на основе файлов предназначены для использования с оркестраторами, такими как Elastic Cloud Enterprise и Elastic Cloud на Kubernetes.
При создании первого токена учетной записи сервиса эта команда создает файл service_tokens в каталоге $ES_HOME/config. По умолчанию этого файла нет. Elasticsearch отслеживает изменения в этом файле и динамически его перезагружает.
Эта команда вносит изменения только в файл service_tokens на локальном узле. Если токен учетной записи сервиса будет использоваться для аутентификации запросов на нескольких узлах кластера, необходимо скопировать файл service_tokens на каждый узел.
Дополнительную информацию о поведении учетных записей сервиса и управлении токенами учетных записей сервиса см. в разделе учетные записи сервиса.
Чтобы Elasticsearch мог читать информацию о токенах учетной записи сервиса при запуске, запустите elasticsearch-service-tokens от имени пользователя, которым запущен Elasticsearch. Запуск этой команды от имени root или другого пользователя обновляет разрешения для файла service_tokens и предотвращает доступ к нему Elasticsearch.
Параметры
-
create -
Создает токен учетной записи сервиса для указанной учетной записи сервиса.
Свойства
create-
<service_account_principal> -
(Обязательно, строка) Принципал учетной записи сервиса, имеющий формат
<namespace>/<service>, гдеnamespace— это верхнеуровневая группа учетных записей сервиса, аservice— имя сервиса. Например,elastic/fleet-server.Принципал учетной записи сервиса должен соответствовать известной учетной записи сервиса.
-
<token_name> -
(Обязательно, строка) Идентификатор имени токена.
Имена токенов должны иметь длину от 1 до 256 символов. Они могут содержать буквенно-цифровые символы (
a-z,A-Z,0-9), дефисы (-) и символы нижнего подчеркивания (_), но не могут начинаться с символа нижнего подчеркивания.Имена токенов должны быть уникальными в контексте связанной учетной записи сервиса.
-
-
list -
Перечисляет все токены учетных записей сервиса, определенные в файле
service_tokens. Если вы укажете принципал учетной записи сервиса, команда будет перечислять только токены, относящиеся к этой учетной записи.Свойства
list-
<service_account_principal> -
(Необязательно, строка) Принципал учетной записи сервиса, имеющий формат
<namespace>/<service>, гдеnamespace— это верхнеуровневая группа учетных записей сервиса, аservice— имя сервиса. Например,elastic/fleet-server.Принципал учетной записи сервиса должен соответствовать известной учетной записи сервиса.
-
-
delete -
Удаляет токен учетной записи сервиса для указанной учетной записи сервиса.
Свойства
delete-
<service_account_principal> -
(Обязательно, строка) Принципал учетной записи сервиса, имеющий формат
<namespace>/<service>, гдеnamespace— это верхнеуровневая группа учетных записей сервиса, аservice— имя сервиса. Например,elastic/fleet-server.Принципал учетной записи сервиса должен соответствовать известной учетной записи сервиса.
-
<token_name> - (Обязательно, строка) Название существующего токена.
-
Примеры
Следующая команда создает токен учетной записи сервиса с именем my-token для учетной записи сервиса elastic/fleet-server.
bin/elasticsearch-service-tokens create elastic/fleet-server my-token
Выводом является токен доступа, который является строкой, закодированной в Base64.
SERVICE_TOKEN elastic/fleet-server/my-token = AAEAAWVsYXN0aWM...vZmxlZXQtc2VydmVyL3Rva2VuMTo3TFdaSDZ
Используйте этот токен доступа для аутентификации с кластером Elasticsearch.
curl -H "Authorization: Bearer AAEAAWVsYXN0aWM...vZmxlZXQtc2VydmVyL3Rva2VuMTo3TFdaSDZ" http://localhost:9200/_cluster/health
Если на вашем узле параметр xpack.security.http.ssl.enabled установлен в true, то необходимо указать https в URL запроса.
Следующая команда перечисляет все токены учетных записей сервиса, определенные в файле service_tokens.
bin/elasticsearch-service-tokens list
В вашем терминале отобразится список всех токенов учетных записей сервиса:
elastic/fleet-server/my-token elastic/fleet-server/another-token
Следующая команда удаляет токен учетной записи сервиса my-token для учетной записи сервиса elastic/fleet-server:
bin/elasticsearch-service-tokens delete elastic/fleet-server my-token
© 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/service-tokens-command.html