sdn*_*hdi 6 python openid django
我使用本地https协议和假证书.
使用时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')
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
根据我的经验,在大多数情况下,验证者对自签名证书都很挑剔。
一般来说,当使用“假”证书时,您应该始终采取额外的步骤并创建假 CA 并使用该 CA 签署假证书。如果不出意外,这会让您的测试更像现实生活中的场景。
以下是有关如何使用 OpenSSL 执行此操作的简要说明:
openssl req -x509 -new -out ca.crt -keyout ca.key -days 3650openssl req -out server.csr -pubkey -new -keyout server.secure.keyopenssl rsa -in server.secure.key -out server.keyopenssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 1825openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAserial ca.srl -out server.crt -days 1825)每当您遇到任何SSL(不仅仅是 HTTPS)问题时 - 使用 rawopenssl进行调试
openssl s_verify -connect <hostname>:<portnumber> <options>
Run Code Online (Sandbox Code Playgroud)
例如
openssl s_verify -connect localhost:443 -CAfile myfakeca.pem
Run Code Online (Sandbox Code Playgroud)
这通常可以为您节省很多麻烦,帮助您解决与代码无关的实际证书问题。
| 归档时间: |
|
| 查看次数: |
1018 次 |
| 最近记录: |