Skip to main content
 首页 » 编程设计

python之在 Python 中使用企业证书颁发机构进行 HTTPS 证书验证

2025年05月04日8TianFang

我需要使用我们公司权威机构签署的证书对服务器进行 HTTPS 调用。如何配置 python 以信任此证书颁发机构?

请您参考如下方法:

默认情况下(假设您正在使用 httplib.HTTPSConnection),您无需执行任何操作,这 httplib doesn't do any certificate verification (same applies to urllib)。

当然,这不是什么好事,您应该验证服务器证书。对此有多种解决方案(参见 this question )。

简而言之,您可能必须手动扩展 httplib.HTTPConnection 以通过 ssl.wrap_socket 将套接字转换为 SSL 套接字,以便能够插入验证回调(您需要验证主机名和证书)。

或者,如果您不受 httplib 的限制,可以使用 PycURL肯定会让这个更干净。您可以配置 CA_INFO(或 CA_PATH)以指向您的内部 CA 证书。此外,它通常不附带预定义的 CA 列表,但您可以从 here 中获取一个。 (从 Mozilla 列表转换而来)并在需要时将这些证书添加到您信任的 CA 列表中。