使用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
消费者

最新文章

  1. Chrome 开发工具之Sources
  2. 《深入理解Java虚拟机》学习笔记1-内存数据区域
  3. Python黑帽编程 4.1 Sniffer(嗅探器)之数据捕获(上)
  4. ZOJ Problem Set - 1402 Magnificent Meatballs
  5. 【python】sqlite使用
  6. easyUI单元格合并自定义封装
  7. JQ基础练习---图片划过变暗
  8. ubuntu下eclipse打开win下的代码中文出现乱码
  9. poj3469 最小割构图
  10. Vim的设置和使用——编程者
  11. 选中CheckBoxList的值放到TextBox中,再次选中从textBox中删除
  12. View not attached to window manager crash 的解决办法
  13. Windows 10 IoT Core环境配置中的那些坑
  14. Effective Java 第三版笔记(目录)
  15. 什么是位、字节、字、KB、MB (转)
  16. Scala从零開始:使用Intellij IDEA写hello world
  17. InnoDB Record, Gap, and Next-Key Locks
  18. 撩课-Mysql详解第3部分sql分类
  19. XCopy复制文件夹命令及参数详解以及xcopy拷贝目录并排除特定文件
  20. jenkins学习(1)

热门文章

  1. GEO Gene Expression Omnibus
  2. 模拟30A 题解
  3. [原创]敏捷管理实践Scrum思维导图
  4. MySql删除重复数据并保留一条
  5. 【转】Android Fastboot 与 Recovery 和刷机
  6. UnityVR案例 - VR僵尸大战(HTC VIVE)
  7. C++ 函数模板print
  8. curl 参数配置详解
  9. odoo开发笔记 -- 还原数据库后,异常:ir_attachment: IOError: [Errno 2] No such file or directory: u'/var/...'
  10. FilelistCreator --- 导出文件列表神器 及其他好用工具