当前位置: 首页 > 面试题库 >

如何使Python使用Mac OS TrustStore中的CA证书?

齐思淼
2023-03-14
问题内容

我需要在公司Intranet上使用Curtom根证书,并将其加载到Mac OS
TrustStore(KeyChain)中,才能解决所有浏览器和GUI应用程序的问题。

似乎它甚至可以curl与Mac OS X附带的版本一起使用,但 不适用于python ,甚至 不适 用于Mac OS 10.12
Sierra(Python 2.7.10)附带的版本。

不过,似乎我会受到:

urllib2.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>

我该如何解决?

因为我在很多Python工具中都遇到了这个问题,所以如果我找到一种无需修补它们就可以避免的方法,我将不胜感激。

我自己不能提供自定义CA证书,因为我无法修补所使用的数十个Python工具。

大多数工具都在使用该requests库,但是有一些工具直接在Python中使用了本机ssl支持。


问题答案:

如果将其他证书放在PEM捆绑文件中,则可以使用这两个环境变量来覆盖Python openssl和请求使用的默认证书存储。

SSL_CERT_FILE=/System/Library/OpenSSL/cert.pem
REQUESTS_CA_BUNDLE=/System/Library/OpenSSL/cert.pem

请注意,该文件不存在,您需要自己构建



 类似资料:
  • 问题内容: 我已经在debian’s中安装了一个自签名的root ca cert并使用安装了它们。在这一点上很高兴,也很高兴,但是python2和python3请求模块坚持认为对证书不满意。 python2: python3 为什么python会忽略系统ca-certificates捆绑包,以及如何集成它? 问题答案: 从http://codingdict.com/questions/664 为了

  • 我已经将一个自签名的根ca证书安装到debian的中,并使用安装它们。此时,true|gnutls-climysite.local感到高兴,true|openssls_client连接mysite.local:443感到高兴,但是python2和python3请求模块坚持认为它对证书不满意。 蟒蛇2: 蟒蛇3

  • 我试图用Java来做这件事,但我认为这是一个一般的证书问题。我有根CA、根CA颁发的中间CA1、中间CA1颁发的中间CA2和中间CA2颁发的证书。 RootCA- 在不知道interCA2的情况下,是否可以通过interCA1验证证书?

  • 我刚从Python.org安装了Python3,但在安装包时遇到了困难。根据设计,这里的网络上有一个中间人包检查设备,它通过使用自己的证书放弃所有ssl连接来检查所有包(包括ssl)。GPO的一部分将自定义根证书推入Windows密钥库。 在使用Java时,如果我需要访问任何外部https站点,我需要手动更新JVM中的CACERT,以信任自签名的CA证书。 对于Python如何实现这一点?现在,当

  • 问题内容: 我需要设置一个在Jersey- Client应用程序中使用。我要做的就是接受自定义根ca证书的上下文。真的没有办法生成密钥库文件和导入CA证书吗? 问题答案: 真的没有办法生成密钥库文件和导入CA证书吗? 有一些方法可以在没有密钥库文件的情况下执行此操作,但是由于必须加载要信任的CA证书,因此必须以某种方式加载文件或资源。 (您当然也可以实现自己的实现,使所有调用都使用Certific

  • 也许我会在这里找到帮助。我想在spring boot应用程序上启用SSL。我的配置如下: 服务器:端口:8999 SSL:enabled:true key-store:classpath:keystore.jks key-store-password:mypass key-password:mypass 问题是我的密钥库。我已将*crt文件导入别名为“tomcat”的密钥存储库: 但是,我仍然无法