我在尝试使用在 ruby 上有密码的证书时遇到了很多麻烦。我正在使用rest-client,但这不是必需的。
这是我需要进行的调用的 cURL 等效项:
curl -E certificate.pem:PASSWORD -d ident=language -d data="test" "https://theurl"
我尝试了很多东西,但我无法让密码部分正常工作。这是我到目前为止所拥有的:
cert = OpenSSL::X509::Certificate.new(File.read("#{RAILS_ROOT}/certificate.pem"))
reply = RestClient.post("https://theurl", {:ident => 'language', :data => 'test'}, {:ssl_client_cert => cert})
我已经尝试将密码放在任何地方,例如:password 和 :ssl_client_key,我已经查看了所有我能找到的文档,但是没有地方可以接受这个密码。
这是我总是得到的错误:
SSL_connect returned=1 errno=0 state=SSLv3 read finished A: sslv3 alert handshake failure
我错过了什么?