配置ACL后也能生成kafka topic

Can produce to kafka topic even after configuring ACL

我是 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还需要生产者配置吗,请指教。

@Apollo : 可能有很多东西..你可以通过 ip 地址/用户名等来阻止。我认为您错过了在 Server.properties

中添加以下 属性 的一件事

authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer

-- 添加此行将使 ACL 能够通过 SimpleAclAuthorizer 工作。 -- Kafka 默认自带参数 authorizer.class.name

定义的 kafka.security.auth.SimpleAclAuthorizer

您可以尝试以下设置,这可能会给出完整的想法。

https://github.com/Symantec/kafka-security-0.9