Аутентификатор пароля#

Trino поддерживает аутентификацию по имени пользователя и паролю через пользовательский аутентификатор пароля, который проверяет учетные данные и создает principal.

Реализация#

PasswordAuthenticatorFactory отвечает за создание экземпляра PasswordAuthenticator. Он также определяет имя этого аутентификатора, которое администратор использует в конфигурации Trino.

PasswordAuthenticator содержит единственный метод, createAuthenticatedPrincipal(), который проверяет учетные данные и возвращает Principal, который затем авторизуется через Системный контроль доступа.

Реализация PasswordAuthenticatorFactory должна быть упакована как плагин и установлена в кластере Trino.

Конфигурация#

После установки на координатор плагина, реализующего PasswordAuthenticatorFactory, он настраивается с помощью файла etc/password-authenticator.properties. Все свойства, кроме password-authenticator.name, специфичны для реализации PasswordAuthenticatorFactory.

Свойство password-authenticator.name используется Trino для поиска зарегистрированного PasswordAuthenticatorFactory по имени, возвращаемому PasswordAuthenticatorFactory.getName(). Остальные свойства передаются в виде map в PasswordAuthenticatorFactory.create().

Пример файла конфигурации:

password-authenticator.name=custom-access-control
custom-property1=custom-value1
custom-property2=custom-value2

Дополнительно координатор должен быть настроен на использование аутентификации по паролю и иметь включенный HTTPS (или включенную переадресацию HTTPS).