Hi All, I'm working on setting up RBAC for Apache Kafka using Ranger. Right now, I'm facing an authorization issue while testing the console producer script in Kafka. I need help in properly configuring Kafka with Ranger. Below are the steps I performed.
- I successfully installed the ranger service. - Integrated Ranger with AD using UserSync. - Installed Ranger Kafka Plugin on Kafka and made the following changes to Kafka server.properties file - *authorizer.class.name <http://authorizer.class.name>=org.apache.ranger.authorization.kafka.authorizer.RangerKafkaAuthorizer* - Created Kafka service in Ranger Admin - Created a policy in ranger admin to restrict access to topic named test for everyone except one user. I'm using PLAINTEXT://HOSTIP:PORT for listeners. Now, when I try write to that topic using *./kafka-console-producer.sh --broker-list hostip:port --topic test* I'm unable to produce to it, and I'm getting authorization error messages. which seems okay. But I don't know how to produce the topic with an authorized user. I tried using a producer config file with the below config *client.id <http://client.id>= testusersasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="testuser" password="testpass";* Below is the output *./kafka-console-producer.sh --broker-list * *hostip:port* * --topic test --producer.config producer.properties* [2024-03-08 16:54:09,034] WARN The configuration 'sasl.jaas.config' was supplied but isn't a known config. (org.apache.kafka.clients.producer.ProducerConfig) >hi [2024-03-08 16:54:15,309] WARN [Producer clientId= testuser] Error while fetching metadata with correlation id 3 : {test=TOPIC_AUTHORIZATION_FAILED} (org.apache.kafka.clients.NetworkClient) [2024-03-08 16:54:15,321] ERROR [Producer clientId= testuser] Topic authorization failed for topics [test] (org.apache.kafka.clients.Metadata) [2024-03-08 16:54:15,325] ERROR Error when sending message to topic test with key: null, value: 2 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback) org.apache.kafka.common.errors.TopicAuthorizationException: Not authorized to access topics: [test] Please provide steps to connect and produce to the topic with test user (This user is from AD). Regards, *Karthik Suvarnasa* EPIC Engineering & Consulting Group, LLC 1049 Willa Springs Drive, Ste. 1001, Winter Springs, FL 32708 (cell) 860-776-7951 | (work) 407-381-3742 Web: www.epicgroupllc.com