我正在尝试使用皮卡(Pika)连接到兔子。我们正在使用证书(SSL)来执行此操作。这是他们的(皮卡)的示例:
context = ssl.create_default_context(
cafile="PIKA_DIR/testdata/certs/ca_certificate.pem")
context.load_cert_chain("PIKA_DIR/testdata/certs/client_certificate.pem",
"PIKA_DIR/testdata/certs/client_key.pem")
ssl_options = pika.SSLOptions(context, "localhost")
conn_params = pika.ConnectionParameters(port=5671, ssl_options=ssl_options)
如果我们的证书文件有文件路径,但我们在Windows上,并且存储在Windows Store中,这很棒。因此,我不相信上面提供的load_cert_chain()会起作用。
我能够访问(或查看)类似的特定证书:
context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
context.load_default_certs()
certs = context.get_ca_certs()
,但这获取了证书列表。我看不到任何明显的方法可以搜索和获取所需的证书。即使可以的话,我不确定如何将代码连接到" pika.ssloptions(context,...)"
所以这里有两个问题,但越重要的是:
- 如何从Windows商店中掏出特定的证书(因为我没有文件路径)?
(另一个问题是如何将其连接到皮卡
注意:皮卡只是一个与兔子接口的第三方库。 Note2:使用Python3.5
看起来,在阅读了此搜索中的一些热门歌曲之后,大多数涉及Windows Cert Store的Python库都可以获取CA Certs和CRL列表,而不是个人证书。<<<<<<<<<</p>
wincertstore
库可能是您要寻找的。
注意:兔子团队监视rabbitmq-users
邮件列表,有时只能在stackoverflow上回答问题。