Ruby SAVON是否支持客户端证书身份验证
我正在评估savon的Web服务消费情况。。。但是,如果我可以使用SSL客户端证书对提供SOAP Web服务的服务器进行身份验证,我找不到任何信息。我读了文档,但没有找到任何相关内容 有人知道SAVON是否支持客户端证书身份验证吗 问候Ruby SAVON是否支持客户端证书身份验证,ruby,ssl-certificate,savon,Ruby,Ssl Certificate,Savon,我正在评估savon的Web服务消费情况。。。但是,如果我可以使用SSL客户端证书对提供SOAP Web服务的服务器进行身份验证,我找不到任何信息。我读了文档,但没有找到任何相关内容 有人知道SAVON是否支持客户端证书身份验证吗 问候 Fak最新稳定版本的Savon(目前为2.2.0)通过全局选项支持SSL客户端证书。请参阅中的SSL部分 下面是一些示例代码,假设httpclient与httpi一起使用: savonConfig = { :namespace => "http:/
Fak最新稳定版本的Savon(目前为2.2.0)通过全局选项支持SSL客户端证书。请参阅中的SSL部分 下面是一些示例代码,假设httpclient与httpi一起使用:
savonConfig = {
:namespace => "http://...com",
:endpoint => 'https://...:557/x/b/c',
#:wsdl => 'https://...:557/x/b/c?wsdl',
:log_level => :debug,
:log => true,
:ssl_verify_mode => :none,
:ssl_cert_file => 'publicCert.pem',
:ssl_cert_key_file => 'privateKey.pem',
:ssl_cert_key_password => '1234',
:open_timeout => 600,
:read_timeout => 600
}
client = Savon.client savonConfig
soapBody = {
...
}
calcResponse = client.call(:charge, :message => soapBody)
如果您有pfx证书/密钥文件,直接使用它可能会有问题-因此您可能希望将其拆分为单独的文件-有关信息,请参阅此页:
希望有帮助Daniel我们在尝试让savon客户端使用ssl客户端身份验证时遇到问题,但同时绕过主机验证 失败与喜欢 HTTPI获取对wir.dhswir.org的请求(net_http) HTTPI::SSLError:SSL\u读取:SSL握手失败 没有教育部的信息 我们已经尝试了savon 2.2.0、2.3.0和2.11.0。错误消息略有不同 我们使用相同的PEM格式的密钥和证书进行savon,并使用unix WGET进行比较。如果我们不通过——无检查证书,WGET将失败,但是如果我们添加它通过并可以执行ssl客户端身份验证并获得访问权限
wget 'https://example.com/CDC/VaccinationService?wsdl' --certificate=example-int-wi-signed.cer --private-key=private.key -O- --no-check-certificate
非常感谢,我应该意识到这些选项是针对客户证书的(假设没有提到“客户”)。我想您也需要使用httpclient来实现这一点……Savon版本2中的HTTP选项用于创建一个。因此,这取决于适配器是否支持。
wget 'https://example.com/CDC/VaccinationService?wsdl' --certificate=example-int-wi-signed.cer --private-key=private.key -O- --no-check-certificate