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

Включение аутентификации

При самостоятельном развертывании YDB по умолчанию используется анонимная аутентификация
, не требующая логина-пароля.

Чтобы включить обязательную аутентификацию, следуйте инструкции в статье Аутентификация.

Аутентификация всегда включена при использовании Kafka API в Yandex Cloud

Механизм аутентификации

В Kafka API поддержано два механизма SASL аутентификации: PLAIN и SCRAM-SHA-256.
Оба механизма могут осуществляться как внутри протокола TLS, так и вне, порождая соответственно комбинации:

  • SASL_PLAINTEXT/PLAIN;
  • SASL_SSL/PLAIN;
  • SASL_PLAINTEXT/SCRAM-SHA-256;
  • SASL_SSL/SCRAM-SHA-256.

Важно

Для использования механизма SCRAM-SHA-256 при аутентификации существующих пользователей может потребоваться смена пароля.

Для аутентификации необходимы:

  • <user-name> — имя пользователя. Об управлении пользователями читайте в разделе Аутентификация.
  • <password> — пароль пользователя. Об управлении пользователями читайте в разделе Аутентификация.
  • <database> — путь к базе данных, с которой предполагается дальнейшее взаимодействие. (Необходим только для механизма PLAIN).

Для механизма SCRAM-SHA-256 база данных определяется на основе настроек подключения Kafka Connect.
Целевой базой данных считается та база, к которой относится узел базы данных, имеющий указанный <ydb-endpoint>.

Из этих параметров формируются следующие переменные, которые вы можете использовать в
sasl.jaas.config параметре конфигурации клиента Kafka:

  • <sasl.username> = <user-name>[@<database>]
  • <sasl.password> = <password>

Важно

Обратите внимание, логика формирования <sasl.username> и <sasl.password> в облачных инсталляциях YDB может отличаться от приведенной здесь.

Примеры аутентификации смотрите в Чтение и запись.

Предыдущая