我是Kafka的新手,我需要为某个主题配置ACL,我在下面尝试过: -
./kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 \ --add --allow-principal User:Bob \ --producer --topic newtopic
理想情况下,不应允许除Bob之外的任何制作人制作主题,但我可以使用以下制作人配置制作。
Properties props = new Properties();
props.put("bootstrap.servers", "localhost:9092");
props.put("client.id", "DemoProducer");
props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
producerConfig = new KafkaProducer<String, String>(props);
this.topic = topic;
this.isAsync = isAsync;
是否需要激活ACL以进行生产者配置,请提示。
答案 0 :(得分:0)
@Apollo:可能有很多东西......你可以通过ip地址/用户名来阻止等等。有一件事我相信你错过了在Server.properties中添加以下属性
authorizer.class.name = kafka.security.auth.SimpleAclAuthorizer
- 添加此行将使ACL能够通过SimpleAclAuthorizer工作。 - 默认情况下,Kafka附带参数authorizer.class.name
定义的kafka.security.auth.SimpleAclAuthorizer您可以尝试以下设置,这可能会给出完整的想法。