# How to stop SOAP4R/OpenSSL requiring cert?

**URL:** <https://www.ruby-forum.com/t/how-to-stop-soap4r-openssl-requiring-cert/155329>\
**Category:** Rails\
**Created:** [December 10, 2008, 5:44pm UTC](https://www.ruby-forum.com/t/how-to-stop-soap4r-openssl-requiring-cert/155329 "2008-12-10T17:44:23Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![mike343](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/58f4c7/32.png) [@mike343](https://www.ruby-forum.com/u/mike343)\
**Post date:** [December 10, 2008, 5:44pm UTC](https://www.ruby-forum.com/t/how-to-stop-soap4r-openssl-requiring-cert/155329/1 "2008-12-10T17:44:23Z")

</div>

Hi  
I want to consume some web services that are only available over HTTPS.

My method looks like this:  
def lookup\_id  
myid=params[:id]  
driver =  
SOAP::WSDLDriverFactory.new(“[https://server.com/xxx.wsdl](https://server.com/xxx.wsdl)”).create\_rpc\_driver  
@p=driver.verifyId(AUTH\_TOKEN, PIN, myid)  
end

Although this works fine on my local box (with a warning), when deployed  
to the staging server I get:  
OpenSSL::SSL::SSLError (certificate verify failed):

Can anyone assist me in telling SOAP4R and/or OpenSSL to simply treat  
this is a warning rather than an error?

Thanks in advance,  
Michael.

---

<div class="post-metadata">

**Author:** ![mike343](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/58f4c7/32.png) [@mike343](https://www.ruby-forum.com/u/mike343)\
**Post date:** [December 11, 2008, 5:36pm UTC](https://www.ruby-forum.com/t/how-to-stop-soap4r-openssl-requiring-cert/155329/2 "2008-12-11T17:36:21Z")

</div>

On Dec 10, 2008, at 11:44 AM, Michael Mcgrath wrote:

> Hi  
> I want to consume some web services that are only available over  
> HTTPS.
> 
> My method looks like this:  
> def lookup\_id  
> myid=params[:id]  
> driver =  
> SOAP::WSDLDriverFactory.new(“[https://server.com/xxx.wsdl](https://server.com/xxx.wsdl)”

Try this:

SOAP::WSDLDriverFactory.new(“[https://server.com/xxx.wsdl](https://server.com/xxx.wsdl)”,  
{ ‘ssl\_config’ =\> { ‘verify\_mode’ =\> OpenSSL::SSL::VERIFY\_NONE }})

Rob B. [http://agileconsultingllc.com](http://agileconsultingllc.com)  
removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![mike343](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/58f4c7/32.png) [@mike343](https://www.ruby-forum.com/u/mike343)\
**Post date:** [December 11, 2008, 5:40pm UTC](https://www.ruby-forum.com/t/how-to-stop-soap4r-openssl-requiring-cert/155329/3 "2008-12-11T17:40:59Z")

</div>

Rob,  
thanks for your response.

> SOAP::WSDLDriverFactory.new(“[https://server.com/xxx.wsdl](https://server.com/xxx.wsdl)”,  
> { ‘ssl\_config’ =\> { ‘verify\_mode’ =\> OpenSSL::SSL::VERIFY\_NONE }})  
> This gives “wrong number of arguments (2 for 1)”

Michael

---

<div class="post-metadata">

**Author:** ![mike343](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/58f4c7/32.png) [@mike343](https://www.ruby-forum.com/u/mike343)\
**Post date:** [December 11, 2008, 8:50pm UTC](https://www.ruby-forum.com/t/how-to-stop-soap4r-openssl-requiring-cert/155329/4 "2008-12-11T20:50:05Z")

</div>

On Dec 11, 2008, at 11:40 AM, Michael Mcgrath wrote:

> Rob,  
> thanks for your response.
> 
> > SOAP::WSDLDriverFactory.new(“[https://server.com/xxx.wsdl](https://server.com/xxx.wsdl)”,  
> > { ‘ssl\_config’ =\> { ‘verify\_mode’ =\> OpenSSL::SSL::VERIFY\_NONE }})  
> > This gives “wrong number of arguments (2 for 1)”
> 
> Michael

This might have to go closer to the place where the connection is  
made. I’d just be diving into the soap4r code anyway, so splash on in  
yourself.

There is also a place (somewhere) that lets you put a similar line  
into a config file for your SSL connections. I think rdoc for the  
SOAP4R library has an example.

-Rob

Rob B. [http://agileconsultingllc.com](http://agileconsultingllc.com)  
removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![mike343](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/58f4c7/32.png) [@mike343](https://www.ruby-forum.com/u/mike343)\
**Post date:** [March 26, 2009, 10:15pm UTC](https://www.ruby-forum.com/t/how-to-stop-soap4r-openssl-requiring-cert/155329/5 "2009-03-26T22:15:04Z")

</div>

Try this out:

wsdl = “[https://some.site/some\_web\_service.asmx?WSDL](https://some.site/some_web_service.asmx?WSDL)”  
drv = SOAP::WSDLDriverFactory.new(wsdl).create\_rpc\_driver  
drv.options[‘protocol.http.ssl\_config.verify\_mode’] =  
OpenSSL::SSL::VERIFY\_NONE

Ben

On Dec 11 2008, 9:40 am, Michael Mcgrath \<rails-mailing-l…@andreas-
