Как защитить тему kafka с помощью имени пользователя и пароля из командной строки / командной строки?
Я установил Docker на свою Windows 10, а также установил Kafka. Я создал "тестовую" тему внутри кластера Kafka. Теперь я хочу защитить тему с помощью простого имени пользователя и пароля. Я новичок в Kafka, любая помощь будет очень благодарна.
Для запуска команд Kafka я использую Windows "Power Shell".
Я пробовал запустить несколько команд в командной строке
Для создания тем: - kafka-themes --create --topic test --partitions 1 --replication-factor 1 --if-not-exists --zookeeper zookeeper:2181
Чтобы защитить тему, я использовал команду: kafka-acls --topic test --producer --authorizer-properties --zookeeper zookeeper: 2181 --add --allow-Principal Пользователь:alice
К сожалению, там написано "bash: afka-acl: command not found"
Нужно ли мне что-нибудь включать в файл конфигурации Kafka? или можно ли просто запускать команды из командной оболочки и защищать тему?
Защита с помощью имени пользователя и пароля такая же, как ACL, или другая?
1 ответ
Kafka поддерживает аутентификацию подключений к брокерам от клиентов (производителей и потребителей), используя
SASL (Kerberos) и SASL/PLAIN
Это требует изменения конфигурации как для брокера, так и для клиентов. То, что вы просите, похоже на SASL plain. Однако, как упоминалось выше, это невозможно сделать из интерфейса командной строки и внести необходимые изменения в конфигурацию. Если вы выполните шаги, указанные в ссылке на документацию, это довольно просто.
ACL - это авторизация, которая определяет, какой пользователь к каким темам имеет доступ. См. Эту ссылку