gpt4 book ai didi

python - 如何修复 https openid 错误

转载 作者:太空狗 更新时间:2023-10-30 00:17:49 26 4
gpt4 key购买 nike

我正在使用本地 https 协议(protocol)和伪造的证书。

当使用 django-openid-auth 时,它给我这个错误:

OpenID failed

OpenID discovery error: Error fetching XRDS document: (60, 'server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none')

我该如何解决这个问题?

最佳答案

根据我的经验,在大多数情况下,验证器对自签名证书很挑剔。

一般来说,当使用“假”证书时,您应该总是采取额外的步骤,创建一个假的 CA 并用 CA 签署假的证书。如果不出意外,这会让您的测试更像现实生活中的场景。

以下是有关如何使用 OpenSSL 执行此操作的简要说明:

  1. 创建 CA(自签名)openssl req -x509 -new -out ca.crt -keyout ca.key -days 3650
  2. 创建服务器 key 和 csr openssl req -out server.csr -pubkey -new -keyout server.secure.key
  3. 取下密码 openssl rsa -in server.secure.key -out server.key
  4. 使用 CA openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 1825
  5. 签署服务器证书
  6. (对于更多证书,使用现有的序列号openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAserial ca.srl -out server.crt -days 1825)

每当您遇到 任何 SSL(不仅仅是 HTTPS)问题时 - 使用原始 openssl 进行调试

openssl s_verify -connect <hostname>:<portnumber> <options>

例如

openssl s_verify -connect localhost:443 -CAfile myfakeca.pem

这通常会为您省去很多与您的代码无关的实际证书问题的麻烦。

关于python - 如何修复 https openid 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16251231/

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