pych中的ssl证书验证

2024-05-14 15:17:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用python连接到chef api。我使用pychef从python连接到chef。在

代码如下:

import chef
with chef.ChefAPI('https://chef-e.xxxx.com:443/organizations/xxxx', '/root/.chef/rajgourav.pem', 'rajgourav'):
    n = chef.Node('chef-e.xxxx.com')

我收到以下证书错误:

^{pr2}$

你能帮我解决ssl证书错误吗。我知道我必须接受证书并将其添加到受信任的证书列表中,但不知道如何在python中实现它。在

另外,我能毫无问题地用刀工作。在

我尝试使用ssl_verify param,但收到错误:

TypeError: __init__() got an unexpected keyword argument 'ssl_verify'

从api.py文件公司名称:

def __init__(self, url, key, client, version='0.10.8', headers={}):

关于我的环境的一些信息:

[root@chef-e py]# /appl/python27/bin/python 
Python 2.7.10 (default, Aug  8 2015, 06:25:19) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
 >>> import chef
 >>> chef.__version__
 (0, 2, 3, 'dev')
 >>>

谢谢, 拉吉古拉夫·贾因


Tags: pyimportcomapisslinitversion错误
1条回答
网友
1楼 · 发布于 2024-05-14 15:17:20

__init__ method of ChefAPI具有以下签名:

def __init__(self, url, key, client, version='0.10.8', headers={}, ssl_verify=True):

显然,您必须将参数ssl_verify设置为False

^{pr2}$

但事实上,这在documentation中仍然缺失。在

编辑:事实上,这似乎是一个尚未发布的更改(v0.2.3 tag还没有包含此选项)。因此,要么使用主分支的源代码,要么唠叨作者推出一个新版本。在

相关问题 更多 >

    热门问题