首页 > 解决方案 > 使用 aio-pika 时,有没有办法禁用证书验证

问题描述

我正在尝试使用 aio-pika 建立与 rabbitmq 的安全连接,同时禁用证书验证。

根据文档,您可以同时传递ssl布尔标志和ssl_options字典。

我尝试通过两者,指定没有证书的 ssl_option,但它仍然失败。

            connection = await connect_robust(
                host=self.host,
                virtualhost=self.rmq_vhost,
                port=int(self.rmq_port),
                login=self.rmq_user,
                ssl=True,
                ssl_options=None, # also tried dict(cert_reqs=ssl.CERT_NONE),
                password=self.rmq_pass,
                loop=main_loop)

收到的错误是: [Errno 1] [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for '10.0.0.1'. (_ssl.c:1122)

https://aio-pika.readthedocs.io/en/latest/apidoc.html?highlight=ssl#aio_pika.connect_robust

我不想(也不能)更改服务器配置。想在客户端做。我可以禁用它并与用其他语言(打字稿、.Net)编写的程序很好地连接。

标签: pythonsslrabbitmqpikaaio

解决方案


推荐阅读