How to secure kafka topic for producer?

Viewed 266

I've multiple producers to push messages into my kafka broker. Want to secure my topic, so that producers need password to push messages in topic or any kind of protection.

In spring boot got to see below properties.

spring.cloud.stream.kafka.binder.configuration.[security.protocol]=SSL
#spring.cloud.stream.kafka.binder.configuration.[ssl.truststore.location]=D:\\streaming\\MessagingQueingTier\\SSL\\kafka.client.truststore.jks
#spring.cloud.stream.kafka.binder.configuration.[ssl.truststore.password]=clientpass
#spring.cloud.stream.kafka.binder.configuration.[ssl.keystore.location]=D:\\streaming\\MessagingQueingTier\\SSL\\kafka.client.keystore.jks
#spring.cloud.stream.kafka.binder.configuration.[ssl.keystore.password]=clientpass
#spring.cloud.stream.kafka.binder.configuration.[ssl.key.password]=clientpass

Are these properties useful to fulfill my requirment ? And How can I set these properties ? Not able to understand. Can anyone help or share any reference doc to do it ?

Thanks

1 Answers

Refer documentation of Kafka security. There are lot of way to secure Kafka:

  • SASL
  • SSL
  • Custom

For authorization, there are different ways

  • Apache Ranger
  • Kafka inbuilt ACLs

Refer this doc

Related