gpt4 book ai didi

Python 请求 "No Client Certificate present in Http Request"

转载 作者:太空宇宙 更新时间:2023-11-03 14:03:29 24 4
gpt4 key购买 nike

尝试发出发布请求时,我收到了 403 响应,其中包含消息“Http 请求中不存在客户端证书”。我尝试使用 verify=False 发出请求,但我仍然遇到同样的问题。

这是我正在发出的获取请求

r = requests.post('https://www.ezcardinfo.com/api/Login/ValidateUsername', params={'userName': my_user_name, 'devicePrint': devicePrint}, headers=header)

现在,我不知道从哪里获得客户端证书或一般如何获得证书。我有 pyopenssl 和 certifi,并通过输入找到我的 request_ca_bundle 的路径

certifi.where()

当我设置 verify='path/to/request_ca_bundle' 时,我仍然收到 403 错误。

最佳答案

... No Client Certificate present in Http Request

这意味着服务器需要客户端使用证书对自己进行身份验证。在这种相互认证中,不仅服务器向客户端出示证书,然后由客户端验证,而且客户端还需要向服务器出示自己的证书。

不经常使用客户端证书。如果使用它们,通常需要您从特定的 CA 获得证书,或者您生成一些证书并将其与您的帐户相关联的证书。详细信息取决于实际站点,您必须查看他们的文档或联系他们了解详细信息。

I tried making the request with verify=False ...

这只会禁用服务器证书的验证,因此对客户端证书相关问题没有影响。

When I set verify='path/to/request_ca_bundle' I still get the 403 error.

这仅设置验证服务器证书所需的受信任 CA,因此对客户端证书相关问题没有影响。

请注意,使用浏览器访问特定 URL 时也会出现相同的错误。如果您的浏览器没有出现此错误,则您可能在那里安装了必要的证书。在这种情况下,您需要导出证书和 key ,然后您可以在 cert 参数中使用它,参见 Client Side Certificates在文档中。

关于Python 请求 "No Client Certificate present in Http Request",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47252674/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com