java—如何在spring应用程序中添加sasl身份验证

4sup72z8  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(311)

我有一个spring应用程序,它使用kafka示例而没有任何身份验证。
现在情况变了,kafka离开了应用程序,以集群的形式运行。我收到Kafka凭证用户名和密码以及hostname:port info.
还有什么其他信息,我需要连接到Kafka集群。
是否需要更改代码?或者我只是需要在application-profile.yaml文件中添加一些信息?
我尝试了谷歌建议的不同方法,但似乎没有什么对我有效,我不断得到:
错误:
打开到服务器x1.x2.x3.x4/x1.x2.x3.x4:2181的套接字连接。不会尝试使用sasl进行身份验证(未知错误)

hequeue:
    #To use local kafka, update use-mock-queue to false and add local  zkservers and metadata-broker-list
    use-mock-queue: false
    zkservers: X1.X2.X3.X4:2181,Y1.Y2.Y3.Y4:2181,Z1:Z2:Z3:Z4:2181
    metadata-broker-list: X1.X2.X3.X4:9092,Y1.Y2.Y3.Y:9092,Z1:Z2:Z3:Z4:9092
    properties:
        sasl:
            jaas:
                config: org.apache.kafka.common.security.scram.ScramLoginModule required username='ANKIT' password='KOTAK';
            mechanism: SCRAM-SHA-256
            kerberos:
                service:
                    name: kafka
        security:
            protocol: SASL_SSL
30byixjq

30byixjq1#

下面是我们使用SpringKafka的示例配置之一。如果匹配,您可以尝试:

spring:
  kafka:
    bootstrap-servers: 
    consumer:
      properties:
        isolation.level: 
        ssl.truststore.location: 
        ssl.truststore.password: 
        security.protocol: SASL_SSL
        sasl.mechanism: GSSAPI
        sasl.kerberos.service.name:     
    producer: 
      properties: 
        ssl.truststore.location: 
        ssl.truststore.password: 
        security.protocol: SASL_SSL
        sasl.mechanism: GSSAPI
        sasl.kerberos.service.name: 
    admin:
      properties: 
        ssl.truststore.location: 
        ssl.truststore.password: 
        security.protocol: SASL_SSL
        sasl.mechanism: GSSAPI
        sasl.kerberos.service.name: kafka

相关问题