Kafka можно настроить для использования нескольких механизмов аутентификации: открытого текста имени пользователя и пароля, Kerberos или SSL. Первые 2 используют SASL, где требуется файл конфигурации JAAS.
Для метода аутентификации с использованием обычного текста конфигурация выглядит так (взято из документация):
KafkaServer {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="admin"
password="admin-secret"
user_admin="admin-secret"
user_alice="alice-secret";
};
Я хочу аутентифицироваться, если это возможно, с помощью LDAP. У меня такой вопрос: если я заменю PlainLoginModule
классом, реализующим LoginModule и поместите этот класс в путь к классам брокера. Могу ли я реализовать аутентификацию любым способом (например, LDAP)?
Я не могу использовать Kerberos разумным образом из-за того, как его участники определены в организации, в которой я работаю, поэтому я хочу использовать LDAP, поскольку мне нужно поддерживать RBAC.