Faraday :: SSLError和“证书验证失败”
我正在使用Windows 10.我想创建将使用outlookAPI的应用程序。因此,我正在按照Write a Ruby on Rails app to get Outlook mail的入门教程进行操作。Faraday :: SSLError和“证书验证失败”
我已经遇到过这个问题SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
如下图所示;当我尝试getToken
在认证阶段就成功上面
问题出现。
我将不胜感激任何建议。
sudo port install curl-ca-bundle
,并告诉您的HTTPS反对使用它:
https.ca_file = '/opt/local/share/curl/curl-ca-bundle.crt'
请注意,如果你希望你的代码在Ubuntu上运行,你需要设置ca_path属性相反,使用默认证书位置/等/ SSL /证书。
OR
添加下面的初始化代码:
require 'openssl'
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE
我忘了提及我在Windows10操作系统上工作。 –
尝试 要求'openssl' OpenSSL :: SSL :: VERIFY_PEER = OpenSSL :: SSL :: VERIFY_NONE – puneet18
它的工作原理。非常感谢。 你能解释我为什么'需要'openssl' OpenSSL :: SSL :: VERIFY_PEER = OpenSSL :: SSL :: VERIFY_NONE'帮助我吗? –
尝试增加宝石在你的Gemfile '认证',并运行包安装。
gem 'certified'
bundle install
我试图运行'宝石安装'认证',捆绑安装,但不幸的是它不起作用。 –
两个请求..(1)请说明错误。图片上的文字太小而无法阅读。另外,文本不能被搜索引擎索引给未来的访问者。 (2)请发布您用于连接服务器的URL,并发布'openssl s_client -connect: -tls1 -servername | openssl x509 -text -noout'。点击*编辑*(不要将其作为评论发布),将其添加到您的问题中。否则,我们无法复制它,并且没有足够的信息来帮助排除故障。 –
jww
我不知道你是如何创建你的证书的,但***'CN = example.com' ***可能是错误的。主机名始终在* SAN *中。如果它存在于* CN *中,那么它也必须存在于* SAN *中(在这种情况下,您必须列出它两次)。有关更多规则和原因,请参阅[如何使用您的证书颁发机构签署证书签名请求](http://stackoverflow.com/a/21340898/608639)和[如何使用openssl创建自签名证书?]( http://stackoverflow.com/q/10175812/608639) – jww