KafkaJS生产者SSL证书

我正在用KafkaJS编写NodeJS Kafka生产者,并且在理解如何获取所需的SSL证书以使用SASL-SSL连接连接到Kafka时遇到麻烦。 在KafkaJS文档中,有SSL的此配置:

ssl: {
    rejectUnauthorized: false,ca: [fs.readFileSync('/my/custom/ca.crt','utf-8')],key: fs.readFileSync('/my/custom/client-key.pem','utf-8'),cert: fs.readFileSync('/my/custom/client-cert.pem','utf-8')
  },

我有问题,因为我不知道应该如何/向其提供什么证书。

我需要提供所有三个道具(ca,密钥和证书)吗?如果是这样,如何获得它们?我们已经像这样Confluent Security Tutorial配置了Kafka集群 我是否必须解码密钥库或其他内容才能为我的KafkaJS获得适当的证书 制片人?我对这一切几乎一无所知。

WMK159687624801314 回答:KafkaJS生产者SSL证书

您的经纪人是否执行客户端身份验证?如果是,那么您将需要keycert。如果您的客户端在“标准”计算机上运行,​​那么大多数知名的CA已经存在,例如在/etc/ssl/certs。在这种情况下,您将需要ssl : true。如果您使用的是自签名证书而不是客户端身份验证,则需要提供ca

所以,这是您的选择。

客户端身份验证

如果CA是自签名的,则还要添加ca(请参见下文)。

ssl: {
    key: fs.readFileSync('/my/custom/client-key.pem','utf-8'),cert: fs.readFileSync('/my/custom/client-cert.pem','utf-8')
  }

自签名证书

ssl: {
    rejectUnauthorized: false,ca: [fs.readFileSync('/my/custom/ca.crt','utf-8')]
  }

rejectUnauthorized : false检查已知的CA。

有关更多信息,请参见此SO question

本文链接:https://www.f2er.com/3160859.html

大家都在问