博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Requests对HTTPS请求验证SSL证书
阅读量:5845 次
发布时间:2019-06-18

本文共 1002 字,大约阅读时间需要 3 分钟。

SSL证书通过在和之间建立一条SSL安全通道(Secure socket layer(SSL)安全协议是由Netscape Communication公司设计开发。该安全协议主要用来提供对用户和服务器的认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性,现已成为该领域中全球化的标准。由于SSL技术已建立到所有主要的和程序中,因此,仅需安装就可以该功能了)。即通过它可以激活SSL协议,实现数据信息在和服务器之间的加密传输,可以防止数据信息的泄露。保证了双方传递信息的安全性,而且用户可以通过验证他所访问的网站是否是真实可靠。

Requests可以为HTTPS请求验证SSL证书,就像web浏览器一样。要想检查某个主机的SSL证书,你可以使用 verify 参数:

requests.get('https://kennethreitz.com', verify=True)

在该域名上我没有设置SSL,所以失败了。但Github设置了SSL:

requests.get('https://github.com', verify=True)

如果你将 verify 设置为False,Requests也能忽略对SSL证书的验证

requests.get('https://kennethreitz.com', verify=False)

 

默认情况下, verify 是设置为True的。选项 verify 仅应用于主机证书。

你也可以指定一个本地证书用作客户端证书,可以是单个文件(包含密钥和证书)或一个包含两个文件路径的元组:

requests.get('https://kennethreitz.com', cert=('/path/server.crt', '/path/key'))

如果你指定了一个错误路径或一个无效的证书:

requests.get('https://kennethreitz.com', cert='/wrong_path/server.pem')SSLError: [Errno 336265225] _ssl.c:347: error:140B0009:SSL routines:SSL_CTX_use_PrivateKey_file:PEM lib

转载于:https://www.cnblogs.com/fanjc/p/9909248.html

你可能感兴趣的文章
Diff and Merge
查看>>
【Practical API Design学习笔记】避免API的误用
查看>>
beego 阿里大鱼短信验证码接口
查看>>
[UMU 学 golang](2) 升级 1.5 + 优化
查看>>
内网OCSP创建和部署指南
查看>>
sublinme 3.0注册码
查看>>
filebeat输出日志到阿里云kafka
查看>>
linux如何查看正在使用的端口
查看>>
python使用遇到的问题
查看>>
Web版PACS开发纪要一:关闭动态库中创建的线程
查看>>
熬得住,出众;熬不住,出局!
查看>>
KMP子字符串查找算法分析与实现
查看>>
Android通过Aidl调用Service实例
查看>>
找回使用Eclipse删除的文件
查看>>
rabbitmq 消息系统 消息队列
查看>>
vBulletin系统曝SQL注入漏洞 安全狗可直接防御
查看>>
Intellij IDEA神器居然还有这些小技巧
查看>>
HBase基本原理
查看>>
php使用qr生成二维码
查看>>
常用的软件
查看>>