认证和验证之间有什么区别?
来自文档:
verify-(可选)如果为True,则将验证SSL证书。还可以提供CA_BUNDLE路径。cert-(可选)如果为String,则为SSL客户端证书文件(. pem)的路径。如果为Tuple,则为('cert ',' key ')对。
这是否意味着我可以做以下事情:
CA_BUNDLE='path/to/.pem'
requests.get(url=google.com, verify= CA_BUNDLE)
或
Cert='path/to/.pem'
requests.get(url=google.com, cert=Cert)
他们看起来都做同样的事情。除了验证可以禁用SSL验证。
我正在尝试使用PYinstaller将我的代码编译为exe。我正在使用certifi模块,我看到它已经有一个cacert. pem文件,但我想我仍然必须将它与我的代码捆绑在一起。
在我的代码中,我应该修改... verify还是cert?...使用cacert.pem的路径还是只使用"cacert.pem"?
2条答案
按热度按时间7cwmlq891#
我认为文件中已明确说明:SSL证书验证
cert
选项用于发送您自己的证书,例如使用客户端证书向服务器验证您自己。它需要一个证书文件,如果密钥与证书不在同一个文件中,还需要密钥文件。选项
verify
用于启用(默认)或禁用服务器证书的验证。它可以使用True或False或包含可信CA的文件名。如果没有给出(没有记录?),它将使用OpenSSL中的默认CA路径/文件,OpenSSL通常在UNIX(OS X除外)上工作,而在Windows上不工作。jdzmm42g2#
如果
*.pem
文件包含此部分然后使用
cert
如果不是,则使用
verify