【发布时间】:2014-06-23 20:04:54
【问题描述】:
我正在尝试使用 Python 3 的 urllib.request 模块中的 urlopen 方法打开一个 https URL。它似乎工作正常,但文档警告说“[i]如果既没有指定cafile 也没有指定capath,HTTPS 请求将不会对服务器的证书进行任何验证”。
如果我不希望我的程序容易受到中间人攻击、吊销证书问题和其他漏洞的影响,我猜我需要指定其中一个参数。
cafile 和 capath 应该指向证书列表。我应该从哪里得到这个列表?是否有任何简单且跨平台的方式来使用我的操作系统或浏览器使用的相同证书列表?
【问题讨论】:
-
是否总是向同一个站点/域发出请求(即,它是具有先验知识的内部应用程序)吗?
-
我计划向同一个域发出请求,我事先知道。但理想情况下,我会喜欢适用于任何领域的东西,出于我自己的好奇心,以防万一我将来需要这样做,并为可能遇到此问题的其他任何人提供帮助。跨度>
标签: python ssl python-3.x https urllib