kafka使用SASL_PLAINTEXT做用户认证
使用SASL/PLAIN认证
server端
1.配置broker
kafka_server_jaas.conf
内容
KafkaServer {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="admin"
password="admin-secret"
user_admin="admin-secret"
user_alice="alice-secret";
};
username\password是broker初始化链接其他broker的使用的;上例admin是内部broker通信使用;
user_[user]=[password]是用户链接到broker合法验证使用的
2.添加JAAS配置到JVM的配置中,文件为kafka-server-start.sh
export KAFKA_OPTS="-Djava.security.auth.login.config=/home/app/projects/kafka/config/common/kafka_server_jaas.conf"
分割下解释
-Djava.security.auth.login.config=/etc/kafka/kafka_server_jaas.conf
该参数为添加为用户认证的server端
3.添加SASL端口和SASL认证方式添加到 server.properties
listeners=SASL_PLAINTEXT://host.name:port
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol=PLAIN
sasl.enabled.mechanisms=PLAIN
认证权限配置
server.propert文件
authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer
allow.everyone.if.no.acl.found=true //对所有用户topic可见
super.users=User:Bob;User:Alice
client端
在kafka-console-producer.sh中添加
export KAFKA_OPTS="-Djava.security.auth.login.config=/home/app/projects/kafka/config/kafka_client_jaas.conf"
kafka_client_jaas.conf文件添加如下内容
KafkaClient {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="alice"
password="alice-secret";
};
添加配置在producer.properties或consumer.properties
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
授权
~/projects/kafka/bin/kafk-acls.sh --authorizer-properties zookeeper.connect=localhost:2181/tkafka --add --allow-principal User:alice --operation Read --operation Write --topic T_acl-1
生产者
./projects/kafka/bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic t-cal --producer.config ~/projects/kafka/config/producer.properties
消费者
最新文章
- Chrome 开发工具之Sources
- 《深入理解Java虚拟机》学习笔记1-内存数据区域
- Python黑帽编程 4.1 Sniffer(嗅探器)之数据捕获(上)
- ZOJ Problem Set - 1402 Magnificent Meatballs
- 【python】sqlite使用
- easyUI单元格合并自定义封装
- JQ基础练习---图片划过变暗
- ubuntu下eclipse打开win下的代码中文出现乱码
- poj3469 最小割构图
- Vim的设置和使用——编程者
- 选中CheckBoxList的值放到TextBox中,再次选中从textBox中删除
- View not attached to window manager crash 的解决办法
- Windows 10 IoT Core环境配置中的那些坑
- Effective Java 第三版笔记(目录)
- 什么是位、字节、字、KB、MB (转)
- Scala从零開始:使用Intellij IDEA写hello world
- InnoDB Record, Gap, and Next-Key Locks
- 撩课-Mysql详解第3部分sql分类
- XCopy复制文件夹命令及参数详解以及xcopy拷贝目录并排除特定文件
- jenkins学习(1)
热门文章
- GEO Gene Expression Omnibus
- 模拟30A 题解
- [原创]敏捷管理实践Scrum思维导图
- MySql删除重复数据并保留一条
- 【转】Android Fastboot 与 Recovery 和刷机
- UnityVR案例 - VR僵尸大战(HTC VIVE)
- C++ 函数模板print
- curl 参数配置详解
- odoo开发笔记 -- 还原数据库后,异常:ir_attachment: IOError: [Errno 2] No such file or directory: u'/var/...'
- FilelistCreator --- 导出文件列表神器 及其他好用工具