kafka windows环境搭建 SASL_PLAINTEXT/SCRAM

kafka windows环境搭建 SASL_PLAINTEXT/SCRAM acl认证记录

一、kafka 下载参考地址

https://kafka.apache.org/downloads

二、环境准备

1)64 bit JDK 1.8+;下载 & 配置。

2)zookeeper,因kafka内置zookeeper,故不需要下载和配置


三、修改配置文件

这里主要修改四个配置文件server.properties、zookeeper.properties、consumer.properties 、producer.properties

1)server.properties
文件位置:kafka\config
#配置启动log存放位
log.dirs=D:\airlook_java_project\kafka_server/kafka-logs

sasl.enabled.mechanisms=SCRAM-SHA-256
sasl.mechanism.inter.broker.protocol=SCRAM-SHA-256
security.inter.broker.protocol=SASL_PLAINTEXT
listeners=SASL_PLAINTEXT://10.21.80.20:9092
listener.name.sasl_plaintext.scram-sha-256.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required
username=“admin”
password=“admin”;
#授权方面
#设置身份验证使用的类
authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer
#设置超级账号,如果是多个需要分号分割,例如:User:admin;User:root
super.users=User:admin
#对所有用户topic可见,要禁用。
allow.everyone.if.no.acl.found=false

2)zookeeper.properties
文件位置:kafka\config

dataDir=D:\airlook_java_project\kafka_server/data/zookeeper
#下面这几个参数似乎可以不配
maxClientCnxns=0
authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
jssaLoginRenew=3600000

3)consumer.properties 、producer.properties 文件
文件位置:kafka\config

security.protocol=SASL_PLAINTEXT
sasl.mechanism=SCRAM-SHA-256
#这是一行的配置,这里显示成了两行
sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required \ username=“admin” password=“admin”
4)创建授权配置文件 auth.conf 文件,供其他命令使用,比如创建topic ,查询topic,都需要改配置进行权限认证
文件位置:kafka\config

security.protocol=SASL_PLAINTEXT
sasl.mechanism=SCRAM-SHA-256
sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required \ username=“admin” password=“admin”

四、授权

在D:\developSOFT\kafka\kafka_2.12-Jaas_Scram\bin\windows 文件夹内输入 cmd 进入dos命令窗口

#动态添加admin用户
kafka-configs.bat --zookeeper 127.0.0.1:2181 --alter --add-config SCRAM-SHA-256=[password=admin] --entity-type users --entity-name admin

五、启动命令

注意:在D:\developSOFT\kafka\kafka_2.12-Jaas_Scram\bin\windows 文件夹内输入 cmd 进入dos命令窗口
1、启动zookeeper服务
zookeeper-server-start.bat …/…/config/zookeeper.properties
2、关闭zookeeper服务
zookeeper-server-stop.bat …/…/config/zookeeper.properties
3、启动kafka
kafka-server-start.bat …/…/config/server.properties
4.关闭kafka ,也可使用 ctil + c 按键关闭
kafka-server-stop.bat …/…/config/server.properties
5、创建主题 test-topic
kafka-topics.bat --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 3 --topic testxp command-config …/…/config/auth.conf
6、启动消费者
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic testxp --from-beginning --consumer.config …/…/config/consumer.properties
7、启动生产者
kafka-console-producer.bat --broker-list 127.0.0.1:9092 --topic testxp --producer.config …/…/config/producer.properties
8、查看消费组
kafka-consumer-groups.bat --bootstrap-server localhost:9092 --list --command-config …/…/config/auth.conf
9、查看主题命令
kafka-topics.bat --list --bootstrap-server localhost:9092 --command-config …/…/config/auth.conf

10、其他命令记录:
#添加test用户
kafka-configs.bat --zookeeper 127.0.0.1:2181 --alter --add-config SCRAM-SHA-256=[password=123456] --entity-type users --entity-name test
#给test 用户 赋予 testxp 的topic读权限
kafka-acls.bat --authorizer-properties zookeeper.connect=127.0.0.1:2181 --add --allow-principal User:“test” --consumer --topic ‘testxp’ --group ‘*’
#给test 用户赋予 testxp 的topic 写权限
kafka-acls.bat --authorizer-properties zookeeper.connect=127.0.0.1:2181 --add --allow-principal User:“test” --producer --topic ‘testxp’

参考链接:
https://www.jianshu.com/p/704ca9560718

kafaka 的授权认证 SASL/PLANTEXT ACL 参考地址: https://blog.csdn.net/weixin_41835653/article/details/124205519

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SASL_PLAINTEXT是一种Kafka的安全机制,可以在传输数据时进行身份验证和加密。下面是在Kafka2.7中设置SASL_PLAINTEXT的步骤: 1. 安装Kafka2.7 首先需要安装Kafka2.7,可以根据自己的操作系统下载安装包或使用源代码编译安装。 2. 配置KafkaKafka的配置文件中,需要添加以下配置项: ``` listeners=SASL_PLAINTEXT://localhost:9092 security.inter.broker.protocol=SASL_PLAINTEXT sasl.mechanism.inter.broker.protocol=PLAIN ``` 这些配置项将启用SASL_PLAINTEXT,并指定Kafka监听的地址和端口。 3. 配置认证机制 在Kafka的配置文件中,还需要指定认证机制。例如,可以使用PLAIN认证机制进行身份验证。需要添加以下配置项: ``` sasl.enabled.mechanisms=PLAIN sasl.mechanism.inter.broker.protocol=PLAIN sasl.server.callback.handler.class=io.confluent.kafka.security.authenication.plain.PlainServerCallbackHandler security.inter.broker.protocol=SASL_PLAINTEXT ``` 4. 创建用户和密码 在Kafka中,需要为每个用户创建用户名和密码。可以使用kafka-configs.sh工具创建用户和密码。例如,以下命令将创建用户名为“admin”,密码为“admin”的用户: ``` bin/kafka-configs.sh --zookeeper localhost:2181 --alter --add-config 'SCRAM-SHA-256=[password=admin],SCRAM-SHA-512=[password=admin]' --entity-type users --entity-name admin ``` 5. 重启Kafka 完成以上步骤后,需要重启Kafka以使配置生效。 6. 测试SASL_PLAINTEXT 可以使用Kafka的命令行工具(kafka-console-producer.sh和kafka-console-consumer.sh)测试SASL_PLAINTEXT是否生效。例如,以下命令将在SASL_PLAINTEXT模式下启动一个生产者: ``` bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test --producer.config config/producer.properties ``` 在控制台中输入消息后,可以使用以下命令在SASL_PLAINTEXT模式下启动一个消费者来接收消息: ``` bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning --consumer.config config/consumer.properties ``` 如果一切正常,应该能够成功发送和接收消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值