Kafka怎麼配置SASL使用者名稱密碼認證

崩天的勾玉發表於2024-11-12
  1. 服務端配置(server.properties):
# 開啟SASL認證
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN

# 配置JAAS檔案路徑
listeners=SASL_PLAINTEXT://localhost:9092
sasl.enabled.mechanisms=PLAIN
listener.name.sasl_plaintext.plain.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required \
    username="admin" \
    password="admin-pwd" \
    user_admin="admin-pwd" \
    user_user1="user1-pwd";
  1. 客戶端配置(consumer.properties/producer.properties):
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required \
    username="admin" \
    password="admin-pwd";
  1. 啟動Kafka前需要配置JAAS檔案(kafka_server_jaas.conf):
KafkaServer {
    org.apache.kafka.common.security.plain.PlainLoginModule required
    username="admin"
    password="admin-pwd"
    user_admin="admin-pwd"
    user_user1="user1-pwd";
};
  1. 啟動Kafka時指定JAAS檔案:
export KAFKA_OPTS="-Djava.security.auth.login.config=/path/to/kafka_server_jaas.conf"
bin/kafka-server-start.sh config/server.properties

要使用命令列工具時,需要配置consumer.properties或producer.properties:

bin/kafka-console-producer.sh --bootstrap-server localhost:9092 \
    --topic test \
    --producer.config config/producer.properties

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 \
    --topic test \
    --consumer.config config/consumer.properties

下載開源的kafka介面客戶端KafkaKing:https://github.com/Bronya0/Kafka-King

新建連線,配置SASL機制,使用者名稱、密碼

image

相關文章