0

jiraSOAP などの gem で証明書の検証をオフにするにはどうすればよいですか。検証は組み込まれていますが、サーバーとクライアントは私のプロパティであるため、その検証は本当に必要ありません。この検証を停止するには、gem を微調整する必要があります。

https://github.com/Marketcircle/jiraSOAP/blob/master/lib/jiraSOAP.rb

この証明書検証エラーにより、プロジェクトに進むことができなくなりました。フォーラムから他のソリューションを試して、自分の をアップグレードし、プロジェクト/etc/ssl/certに追加しました。OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONEしかし、どれも機能しませんでした。

require 'jiraSOAP'
jira = JIRA::JIRAService.new "https://server/rpc/soap/jirasoapservice-v2?wsdl"
jira.login username, password


/usr/local/rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/net/http.rb:799:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)
4

1 に答える 1

0

ホストのみの証明書チェックを無視するようにHandsoap gemを変更することで解決できました。

gems パスで変更するファイル -

      handsoap-1.1.8/lib/handsoap/http/drivers/net_http_driver.rb

この新しい http クライアントの後に変更します -

      http_client = Net::HTTP.new(url.host, url.port)

これを追加 -

      #Added these new lines below 
      if url.host == "server" #ignore cert check only for this host
      http_client.verify_mode = OpenSSL::SSL::VERIFY_NONE 
      end
于 2012-05-25T01:46:21.410 に答える