在前一篇,kafka启用认证(http://blog.csdn.net/zhoudetiankong/article/details/78229416)的基础上,来说明kafka topic的acl权限。

1.修改server.properties

authorizer.class.name = kafka.security.auth.SimpleAclAuthorizer#设置超级用户
super.users=User:admin

allow.everyone.if.no.acl.found参数,默认是false。如果一个资源R没有任何acl设置,那么默认是除了超级用户之外,其他用户都不可见。设置为true可以改变这个情况。

2.授权方法

Principal P is [Allowed/Denied] Operation O From Host H On Resource R

需要说明的是,Principal是根据之前的kafka认证中的主体,比如我上篇使用的是SASL/PLAIN,则acl授权体系中 Principal=PLAIN中的用户名。我刚开始打算单独使用kafka acl而不启用kafka authentication,结果是Principal并不是我想象中的linux用户名,而是基于kafka authentication体系中的用户名,这样才能生效。另外,可以通过重写principal.builder.class参数的类,来实现单独使用acl。

以上一篇中的例子来说明,plain中配置了两个用户,admin和alice。
现在授权给aclie用户topic:test的生产者和消费者的权限,没有限定ip。

授权用户alice在任何ip上有topic:test的生产者权限

./kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:alice   --producer  --topic test

授权用户alice在任何ip上有topic:test的消费者权限,并且group是任意名字

./kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:alice   --consumer  --group=*  --topic test

查看kafka集群所有的acl授权信息

./kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --list

具体授权使用方法可以查看官网:
http://kafka.apache.org/0102/documentation.html#security_authz_examples

另外需要注意的是,由于acl信息存储在zookeeper中,所以在没有启用zookeeper权限体系的情况下,任何用户理论上都可以执行/kafka-acls.sh。

kafka topic acl授权相关推荐

  1. 【Kafka】Kafka认证与授权

    防丢失:大家去看原文 参考:https://www.cnblogs.com/rexcheny/articles/12884990.html 参考:https://www.orchome.com/553 ...

  2. kafka topic制定规则

    kafka topic的制定,我们要考虑的问题有很多,比如生产环境中用几备份.partition数目多少合适.用几台机器支撑数据量,这些方面如何去考量?笔者根据实际的维护经验,写一些思考,希望大家指正 ...

  3. Java程序创建Kafka Topic,以及数据生产消费,常用的命令

    转自: Java程序创建Kafka Topic,以及数据生产消费,常用的命令_Zyy_z_的博客-CSDN博客_java kafka创建topicKafka简介: Kafka是一个分布式发布--订阅消 ...

  4. Kafka—topic的查询和创建

    记录常用的kafka常用的topic相关命令 查看topic列表 [root@shtest01 ~]# /usr/lib/kafka/bin/./kafka-topics.sh --list --zo ...

  5. 【kafka】kafka 2.3 版本的kafka topic 分区扩容

    文章目录 1.概述 2 .AdminZkClient扩容 1.概述 首先参考文章:[kafka]kafka 0.10以及1.x版本的kafka topic 分区扩容 因为需要所以需要一个程序对kafk ...

  6. 【kafka】kafka topic某些分区 副本落后leader太多

    文章目录 1.概述 本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载. 1.概述 社区有人问 kafka topic某些分区 副本落后leader太多有大佬 ...

  7. 【jmx】java jmx 获取 kafka topic的logStart LogEnd信息

    1. 概述 因为要展示kafka topic的 start offset和end offset ,最开始的方案是使用构建消费者,然后使用 consumer.seekToEnd(topicPar);和c ...

  8. 【Kafka】kafka Java api 获取 kafka topic 或者 partition 占用的磁盘大小

    1.概述 kafka Java api 获取 kafka topic 或者 partition 占用的磁盘大小 package com.dtwave.kafka.storage;import org. ...

  9. OpenShift 4 之Kafka(2)-配置Kafka Bridge,通过HTTP访问Kafka Topic

    <OpenShift 4.x HOL教程汇总> 文章目录 Kafka Bridge的功能 配置Kafka Bridge 测试验证Kafka Bridge 发消息 收消息 Kafka Bri ...

  10. Kafka 集群扩容、分区重新分配、SparkStreaming自适应上游kafka topic partition数目变化

    一.扩容场景 了解了数据迁移,我们来看下哪些场景需要进行扩容,然后有哪些方法可以实现快速扩容的效果.通常有如下两种需要紧急扩容的场景: 集群所有节点负载都高,需要快速扩容. 集群内某几台节点负载很高, ...

最新文章

  1. centos6 安装 redis
  2. 十、图像参数集Picture Paramater Set(PPS)解析
  3. java的内省有用么_JAVA中的内省使用
  4. MySQL带EXISTS关键字的子查询
  5. MyBatis 实际使用案例-settings
  6. Tuxera NTFS for Mac中文官网正式推出
  7. SAP 电商云 Spartacus UI production build 时遇到和 orderCore 相关的错误
  8. Tip:强制执行exchange DAG节点之间的数据库副本移动
  9. python tkinter 输入数字 小数_Python3 tkinter基础 Entry validate isdigit 只能输入数字的输入框...
  10. 9 WM配置-主数据-定义物料分阶段的范围(Staging Area)
  11. Linux——umask使用详解
  12. java 课后习题 Vector类的 初使用
  13. 【ACL2020】基于语境的文本分类弱监督学习
  14. HDU5828 Rikka with Sequence
  15. 计算机无法添加本地策略组,电脑打不开本地组策略编辑器,求破~!
  16. uni-app 小程序分享到朋友和朋友圈
  17. 用户画像项目两大核心内容之一“one_id”(含SQL实现代码)
  18. MySQL学习笔记(七)视图,触发器,事务,存储过程,函数,流程控制,索引
  19. 交易apple id但是忘了关闭icloud,如何关闭激活锁?
  20. 女神让我去修电脑,无数次戳中笑点

热门文章

  1. python创建sqlite3 gbk错误_请问django python用sqlite3模拟创建一个服务器时出现错误?...
  2. 空格、NBSP 造成的 JSON 解析失败问题
  3. 嗅探器c语言源码,自己做的嗅探器
  4. 85-94年河南农村娃们的童年记忆,追忆童年旧时光
  5. leetcode 咒语和药水的成功对数
  6. WPF 3D 贴图: 为你的二次元老婆们做个3D画廊
  7. threejs道路贴图动画
  8. CC1310空中升级笔记04 WSN OAD Example
  9. 新建的html文件都不能显示图片,WindowsXp系统打开网页无法显示图片的解决方案...
  10. mac下用mysql执行sql文件完整