首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将自定义CA根证书添加到Windows中pip使用的CA存储区?

如何将自定义CA根证书添加到Windows中pip使用的CA存储区?
EN

Stack Overflow用户
提问于 2016-09-07 03:24:31
回答 6查看 185.8K关注 0票数 103

我刚从python.org安装了Python3,在使用pip安装包时遇到了问题。通过设计,这里的网络上有一个中间人数据包检测设备,它通过使用自己的证书重新签署所有ssl连接来检查所有数据包(包括ssl)。GPO的一部分将自定义根证书推送到Windows密钥库中。

使用Java时,如果我需要访问任何外部https站点,则需要手动更新JVM中的cacerts以信任自签名CA证书。

我该如何在python中做到这一点呢?现在,当我尝试使用pip安装软件包时,可以理解,我得到了奇妙的[SSL: CERTIFICATE_VERIFY_FAILED]错误。

我意识到我可以使用--trusted-host参数忽略它们,但我不想对我试图安装的每个包都这样做。

有没有办法更新python使用的CA证书存储?

EN

回答 6

Stack Overflow用户

发布于 2016-09-07 05:43:17

运行:python -c "import ssl; print(ssl.get_default_verify_paths())"检查用于验证证书的当前路径。将您公司的根证书添加到其中之一。

路径openssl_capath_env指向环境变量:SSL_CERT_DIR

如果SSL_CERT_DIR不存在,则需要创建它并将其指向文件系统中的有效文件夹。然后,您可以将证书添加到此文件夹中以使用它。

票数 47
EN

Stack Overflow用户

发布于 2020-09-25 12:53:40

Windows上的替代解决方案是安装允许Python使用Windows证书存储的python-certifi-win32。

代码语言:javascript
复制
pip install python-certifi-win32
票数 13
EN

Stack Overflow用户

发布于 2018-03-21 01:04:21

不是最好的答案,但您可以使用pip--cert选项重用已经创建的ca包,例如:

代码语言:javascript
复制
pip install SQLAlchemy==1.1.15 --cert="C:\Users\myUser\certificates\my_ca-bundle.crt"
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39356413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档