2

Using an existing working Java example I am trying to write a python equivalent of the producer using python-kafka and confluent_kafka library. How do I configure sasl.jass.config in python with the information like that in Java below?

import java.util.Properties;
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.Producer;
import org.apache.kafka.clients.producer.ProducerRecord;

...
Properties props = new Properties();
...
props.put("sasl.jaas.config", "org.apache.kafka.common.security.scram.ScramLoginModule required username=\"<Kafka_Username>\" password=\"<Kafka_Password>\";");

Producer<String, String> producer = new KafkaProducer<>(props);
codeBarer
  • 2,238
  • 7
  • 44
  • 75

1 Answers1

7

This works for me

from confluent_kafka import Producer

SECURITY_PROTOCOL = "SASL_SSL"
SASL_MECHANISM = "PLAIN"

conf = {
 'bootstrap.servers': SERVERS,
 'sasl.mechanisms': SASL_MECHANISM,
 'security.protocol': SECURITY_PROTOCOL,
 'sasl.username': SASL_USERNAME,
 'sasl.password': SASL_PASSWORD,
 ...

 }
 consumer = Producer(conf)
Shekhu
  • 96
  • 4