Исключения авторизации
Симптомы:
- Я настроил соответствующие роли и пользователей, но все равно получаю исключение авторизации.
- Я могу пройти аутентификацию по LDAP, но все равно получаю исключение авторизации.
Решение:
-
Убедитесь, что имена ролей, связанные с пользователями, соответствуют ролям, определённым в файле
roles.yml. Вы можете использовать инструментelasticsearch-usersдля отображения списка всех пользователей. Любые неизвестные роли отмечаются как*.bin/elasticsearch-users list rdeniro : admin alpacino : power_user jacknich : monitoring,unknown_role*
unknown_roleне найдено вroles.ymlДля получения дополнительной информации об этой команде см. команду
elasticsearch-users. -
Если вы осуществляете аутентификацию по LDAP, ряд параметров конфигурации может привести к этой ошибке.
Идентификация групп
Группы находятся либо по результатам поиска LDAP, либо по атрибуту "memberOf" пользователя. Кроме того, если поиск по поддереву отключен, он будет искать только на одном уровне вглубь. Все параметры см. в настройках домена LDAP. Здесь много параметров, и использование значений по умолчанию не подойдет для всех сценариев.
Сопоставление групп с ролями
Файл
role_mapping.ymlили путь к нему могут быть неправильно сконфигурированы. Дополнительная информация находится в Файлах безопасности.Определение роли
Возможно, определение роли отсутствует или некорректно.
Для отладки этих возможностей включите дополнительную запись в журнал. Вы можете включить отладку, настроив постоянные параметры:
resp = client.cluster.put_settings( persistent={ "logger.org.elasticsearch.xpack.security.authc": "debug" }, ) print(resp)response = client.cluster.put_settings( body: { persistent: { 'logger.org.elasticsearch.xpack.security.authc' => 'debug' } } ) puts responseconst response = await client.cluster.putSettings({ persistent: { "logger.org.elasticsearch.xpack.security.authc": "debug", }, }); console.log(response);PUT /_cluster/settings { "persistent": { "logger.org.elasticsearch.xpack.security.authc": "debug" } }В качестве альтернативы, добавьте следующие строки в конец файла конфигурации
log4j2.propertiesв папкеES_PATH_CONF:logger.authc.name = org.elasticsearch.xpack.security.authc logger.authc.level = DEBUG
Дополнительную информацию о настройке уровней логгирования смотрите в разделе Настройка уровней логгирования.
Успешная аутентификация должна вывести в журнал отладочные сообщения, в которых будут перечислены группы и сопоставления ролей.
© 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/security-trb-roles.html