本文章基于Kafka配置 SASL/PLAINTEXT后编写,如未配置请参考:https://datamining.blog.csdn.net/article/details/90264636 进行修改

配置kafka server.properties文件

super.users 指定超级用户,不受权限控制

listeners=SASL_PLAINTEXT://ip:pot
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol=PLAIN
sasl.enabled.mechanisms=PLAIN
authorizer.class.name = kafka.security.auth.SimpleAclAuthorizer
super.users=User:admin

用户配置为kafka设置的kafka_server_jass.conf,如何配置参考:https://datamining.blog.csdn.net/article/details/90264636

配置为:

# user_zsh,user_dataflow,user_crawler,user_taskcentr 皆为用户
KafkaServer {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="zsh"password="niubi"user_zsh="niubi"user_dataflow="dataflow"user_crawler="crawler"user_taskcenter="taskcenter";
};
Client{org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="kafka"password="kafkapwd";
};
  • 指定Topic拒绝所有用户读写权限(超级用户除外)
[root@ecs-0002 logs]# kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 -add --deny-principal User:* --operation Read --operation Write --topic test_topic_3
Adding ACLs for resource `Topic:test_topic_3`: User:* has Deny permission for operations: Read from hosts: *User:* has Deny permission for operations: Write from hosts: * Current ACLs for resource `Topic:test_topic_3`: User:* has Deny permission for operations: Read from hosts: *User:* has Deny permission for operations: Write from hosts: * 
  • crawler用户添加指定Topic读写权限,不指定的用户均无法访问
[root@ecs-0004 config]# kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 -add --allow-principal User:crawler  --operation Read --operation Write --topic test_topic_3
Adding ACLs for resource `Topic:test_topic_3`: User:crawler has Allow permission for operations: Write from hosts: *User:crawler has Allow permission for operations: Read from hosts: * Current ACLs for resource `Topic:test_topic_3`: User:crawler has Allow permission for operations: Write from hosts: *User:crawler has Allow permission for operations: Read from hosts: * 
  • crawler用户添加读权限
kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 -add --allow-principal User:crawler  --operation Read --topic test_topic_3
  • crawler用户添加写权限
kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 -add --allow-principal User:dataflow --operation Write --topic test_topic_3
  • 移除某个Topic ACL权限,任何权限不设置即所有用户都可以操作
[root@ecs-0004 config]# kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --remove --topic test_topic_3       Are you sure you want to delete all ACLs for resource `Topic:test_topic_3`? (y/n)
y
Current ACLs for resource `Topic:test_topic_3`: 
  • 删除Topic 指定ACL权限
kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --remove --allow-principal User:crawler --allow-principal User:Alice --allow-host 198.168.2.0 --allow-host 198.168.2.1 --operation Read --operation Write --topic test_topic_3
  • 指定host某台服务器可以操作

注:--allow-host和--deny-host 指定方式,必须与--deny-principal 或--allow-principa共同使用

使用--allow-host必须与--allow-principa 一起使用,指定某个用户在某台服务器可以操作

同理,使用--deny-host必须与--deny-principal 一起使用

[root@ecs-0004 config]# kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 -add --allow-principal User:crawler  --allow-host 192.168.2.221 --operation Read --topic test_topic_3
Adding ACLs for resource `Topic:test_topic_3`: User:crawler has Allow permission for operations: Read from hosts: 192.168.2.221 Current ACLs for resource `Topic:test_topic_3`: User:crawler has Allow permission for operations: Read from hosts: 192.168.2.222User:crawler has Allow permission for operations: Read from hosts: 192.168.2.221 
  • 查看ACL列表
[root@ecs-0004 config]# kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --list --topic test_topic_3
Current ACLs for resource `Topic:test_topic_3`: User:crawler has Allow permission for operations: Read from hosts: * 
  • 增加producer、consumer ACL
kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:crawler --producer --topic test_topic_3
kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:crawler --consumer --topic test_topic_3 --group group-1

Kafka ACL控制,用户权限能控制相关推荐

  1. 计算机用户权限完全控制,win10用户权限管理文件夹怎么设置_win10文件夹完全控制权限操作方法...

    在win10系统中,想要打开一些带有权限设置的文件时就需要用户获取一定的控制权限权利才行,同样的,用户也可以通过权限对文件夹进行完全控制管理,那么win10用户权限管理文件夹怎么设置呢?这里就来教大家 ...

  2. PostgreSQL_通过schema控制用户权限

    背景环境 schema的特点 schema概念像命名空间 schema下不能再有schema嵌套 各个对象比如表,函数等存放在各个schema下 同一个schema下不能有重复的对象名字,但在不同sc ...

  3. jeecg如何控制用户权限_如何为用户定制个性化控制台?

    现在很多厂家都打着能"定制"控制台的名义进行宣传.控制台真的谁都能定制吗?定制是轻而易举的吗? 其实,真正能"定制"控制台的厂家所需要的首要条件就是拥有完整的生 ...

  4. oracle之控制用户权限和练习

  5. struts2如何使用拦截器进行用户权限控制

    大多数网站会设置用户权限,如过滤非法用户,用户不登录时不能进行访问,或者设置访问的权限,如部分内容仅对VIP开放等等,这些权限的控制都可以用struts2中的拦截器来实现. 下面通过一个简单的Demo ...

  6. 关于用户权限的数据库设计

    最近项目的项目很奇怪,一个大项目(系统)里包含了很多小的子系统,而这些子系统中都有权限控制的部分,这件事情挺让我头痛的,记得一年前在沈阳,我曾经有一段时间也因因这个问题而疲于奔命,为什么说疲于奔命呢? ...

  7. oracle 如何查看权限,如何查看Oracle的用户权限

    ORACLE数据字典视图的种类分别为:USER,ALL 和 DBA. USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息 ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的 ...

  8. 权限表管理之获取用户权限表列表数据

    用户权限控制说明 在产品运营平台中,是需要对用户进行权限控制的.Django实现了用户权限的控制 消费者用户与公司内部运营用户使用一个用户数据库来存储 通过is_staff 来区分是运营用户还是消费者 ...

  9. hive的用户和用户权限

    hive的用户和用户权限 HiverServer2支持远程多客户端的并发和认证,支持通过JDBC.Beeline等连接操作.hive默认的Derby数据库,由于是内嵌的文件数据库,只支持一个用户的操作 ...

最新文章

  1. 定制Eclipse IDE之界面篇
  2. Protege5.0.0入门学习
  3. 修订版 | 目标检测:速度和准确性比较(Faster R-CNN,R-FCN,SSD,FPN,RetinaNet和YOLOv3)...
  4. 安装mysql数据库要注意的
  5. 集合WeakHashMap
  6. 最大子段和之分治递归法
  7. 校园网编写linux网络认证,个人心得:校园网linux锐捷认证ruijie(xrgsu)使用及xrgsu下载...
  8. Android常用组件,太全了
  9. socksCap32+socks2http软件
  10. Linux 更换软件源
  11. 数字图像处理技术与人脸识别
  12. starbound服务器文件,starbound星界边境开新档并从老存档转移物资的方法_快吧单机游戏...
  13. 盘点2018年化工行业大事故!回顾那些令人心痛的瞬间......
  14. 2018年的人工智能和深度学习将会如何发展?
  15. 【iOS】AFNetworking
  16. 计算机应用课程的体会,计算机课程心得体会
  17. FlexRay汽车通信总线介绍及测试环境
  18. Redis安装整理(window平台和Linux平台)
  19. Ubuntu下安装打印机驱动(两种方法)
  20. 计算机各专业的就业方向你都了解吗

热门文章

  1. stream去重_使用Java Stream API中DistinctBy删除重复数据
  2. restful接口开发实例_Restful接口开发与测试—接口测试
  3. Linux的实际操作:文件目录类的实用指令(rm mv)
  4. JAVA入门级教学之(classpath的配置)
  5. android智能老人机系统,国产老人机也可以变智能!可运行Android
  6. php mysql 作业计划,关于php:我需要使用cron作业每30分钟恢复一次数据库(mysql)
  7. 大数据 深度 分页_机器学习、深度学习、大数据 ?傻傻分不清楚?
  8. Java大牛的一些总结,献给对未来还在迷茫中的你!
  9. aop注解配置切点 spring_Spring通过自定义注解灵活配置AOP切点
  10. 手机浏览器网址_打开URL(在其他应用中访问网址)app下载-打开URL(在其他应用中访问网址)v2.6安卓版下载...