spring boot 集成kafka 添加用戶認證


最近因為公司需要程序在連接kafka的時候需要進行身份認證,在網上翻了一遍之后發現都不能調通,最后測試通過記錄一下

1.首先是kafka服務器端配置

    kafka服務器端的權限配置也是有多種配置方式,這里配置成功的是這種方式

org.apache.kafka.common.security.plain.PlainLoginModule

其他的身份認證我這邊沒有做測試,理論上應該差別不大,具體可以自己嘗試一下。

上面的認證模式確定之后,就是客戶端配置

 

2.客戶端配置賬號信息:

server:
  port: 8080
  servlet:
    context-path: /demo
spring:
  kafka:
    bootstrap-servers: 192.168.152.69:9092,192.168.152.69:9093,192.168.152.69:9094
    producer:
      retries: 0
      batch-size: 16384
      buffer-memory: 33554432
      key-serializer: org.apache.kafka.common.serialization.StringSerializer
      value-serializer: org.apache.kafka.common.serialization.StringSerializer
    consumer:
      group-id: spring-boot-demo
      # 手動提交
      enable-auto-commit: false
      auto-offset-reset: latest
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      properties:
        session.timeout.ms: 60000
    listener:
      log-container-config: false
      concurrency: 5
      # 手動提交
      ack-mode: manual_immediate
    properties:
      security:
        protocol: SASL_PLAINTEXT
      sasl:
        mechanism: PLAIN
        jaas:
          config: 'org.apache.kafka.common.security.plain.PlainLoginModule required username="name" password="password";'

經過測試發布訂閱都能正常運行

代碼參考地址:https://github.com/xkcoding/spring-boot-demo/tree/master/demo-mq-kafka

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM