ssl - 如何为 confluent kafka python 客户端配置 ssl 证书和密钥?
问题描述
我正在使用融合卡夫卡。我必须使用 ssl 从 kafka-broker 检索消息。现在,我已经使用这些属性(部分)配置了代理:
listeners=SSL://:9092
security.inter.broker.protocol = SSL
控制台消费者/生产者似乎可以正常使用此 ssl 配置。对于控制台消费者/生产者,我有以下配置:
security.protocol=SSL
ssl.truststore.location=/home/ubuntu/kafka1.server.truststore.jks
ssl.truststore.password=<intentionally>
ssl.keystore.location=/home/ubuntu/kafka1.server.keystore.jks
ssl.keystore.password=<intentionally>
ssl.key.password=<intentionally>
现在,从控制台的角度来看,一切正常。
我在弄清楚如何使用 python-client 消费者(启用了 ssl)连接到代理时遇到问题。文档讨论了要设置的这 3 个属性:
ssl.ca.location
ssl.certificate.location
ssl.key.location
但是,没有提到在哪里或如何为这些家伙获取数据。
请帮帮我。谢谢。
解决方案
要配置这些属性,您必须使用 OpenSSL 而不是 keytool 创建符合 x509 的证书。请参阅此页面,这里解释了如何创建 x509 证书。
推荐阅读
- c++ - 确保 char 指针始终指向相同的字符串文字
- python - Python Dataframe 中值的自定义重新排序
- angular - Angular:我需要“变更检测”方面的帮助
- java - 将图像转换为灰色时的图像像素值在 Java 中与在 Python 中几乎相同(但不同)
- winforms - Visual Studio - 以参数为输入的 Windows 窗体应用程序的设置项目
- c# - 实体框架不保存相同类型的属性
- python - Python - 未找到连接适配器
- macos - 如何在 Mac 上安装 reptyr?
- firebase - Firebase 恢复已删除的主机
- python - 评估在命令行上传递的公式