kafka集群使用 SASL/PLAIN 认证
SASL/PLAIN 是一种简单的 username/password 认证机制, 通常与 TLS 加密一起使用, 用于实现安全认证. Kafka 提供了一个默认的 SASL/PLAIN 实现, 可以做扩展后在生产环境使用.
username 在 ACL 等的配置中作为已认证的 Principal.
1.配置 Kafka Broker
在每一个 Kafka broker 的 config 目录中, 添加一个 kafka_server_jaas.conf文件,内容如下:
KafkaServer {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="admin"
password="admin"
user_admin="admin"
user_alice="alice"; };
将 JAAS 配置文件的路径作为 JVM 的参数, 并传递到每一个 Kafka broker:
-Djava.security.auth.login.config=/etc/kafka/kafka_server_jaas.conf
在 server.properties 中配置 SASL 端口和 SASL 机制. 例如:
listeners=SASL_SSL://host.name:port
security.inter.broker.protocol=SASL_SSL
sasl.mechanism.inter.broker.protocol=PLAIN
sasl.enabled.mechanisms=PLAIN