Kafka Connect 访问架构注册表的基本身份验证

Bün*_*ürk 4 rest apache-kafka apache-kafka-connect confluent-schema-registry

我们已将架构注册表和 Kafka Connect 设置为使用基本身份验证。一些连接器似乎正在运行。但其中一些给出了错误:

“io.confluence.kafka.schemaregistry.client.rest.exceptions.RestClientException:未经授权;错误代码:401”

如何向 Kafka Connect 提供架构注册表的凭据?我应该在连接器配置或 connect-distributed.properties 中定义它吗?请注意,我可以毫无问题地使用 GET 等curl 命令。

Bün*_*ürk 8

解决了,会回答而不是删除,这样如果有人遇到同样的问题,他们可以快速找到解决方案。

您只需向 connect-distributed.properties (或 -standalone)添加几行即可。

schema.registry.basic.auth.user.info=user:pass
key.converter.basic.auth.user.info=user:pass    
value.converter.basic.auth.user.info=user:pass    
schema.registry.basic.auth.credentials.source=USER_INFO    
key.converter.basic.auth.credentials.source=USER_INFO   
value.converter.basic.auth.credentials.source=USER_INFO
Run Code Online (Sandbox Code Playgroud)

这里的 user:pass 是模式注册表的登录凭据。

我不确定您是否必须添加键和值转换器行,但这样做是为了确保它以这种方式工作。还要保留 USER_INFO 不变,并且不要忘记重新启动连接服务。