我的 Rails 应用程序上有一个 vimeo 登录,当该应用程序在 Mac 上运行时它工作正常但是在我的 Windows 系统(以及我拥有的任何 Windows 10 机器)上我收到此错误:
Faraday::SSLError at /users/auth/vimeo/callback
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
我读到的所有错误都说我必须帮助应用程序找到证书 - 我在这方面没有取得任何成功,我不确定我应该做什么来解决问题。
我的理解是,包含证书的文件夹是路径,您需要在 config/initializers/devise.rb 中键入此路径
即 config.omniauth :vimeo, 'key', 'key' “!这里有一些路径!”
我正在使用 rails FTW,我尝试了许多不同的方法来尝试让它工作但没有成功。感谢帮助。
最佳答案
这里有几个选项。
选项 #1
你可以告诉法拉第,哪个omniauth适配器正在使用,手动设置你想使用的证书。
您需要深入研究适配器代码才能执行此操作。
connection = Faraday.new 'https://example.com', :ssl => {
:client_cert => ...,
:client_key => ...,
:ca_file => ...,
:ca_path => ...,
:cert_store => ...
}
选项 #2
将缺少的证书添加到您正在使用的计算机/服务器。如何完成取决于您的操作系统。
选项 #3
一种快速但不安全的解决方案
全局关闭 SSL 验证。
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE
关于ruby-on-rails - Vimeo Rails 设计 OmniAuth SSL 错误仅限 Windows,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33534003/