SAVON是否支持客户端证书身份验证

Fak*_*ada 7 ruby ssl-certificate savon

我正在评估savon使用webservices ...但是如果我可以使用SSL客户端证书来对提供SOAP Web服务的服务器进行身份验证,我就找不到任何信息.我阅读了文档,但没有找到任何相关信息.

有谁知道SAVON是否支持客户端证书身份验证?

关心法克

rub*_*iii 14

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)
Run Code Online (Sandbox Code Playgroud)

如果你有一个pfx证书/密钥文件,你可能有问题直接使用它 - 所以你可能想把它们拆分成单独的文件 - 请参阅此页面获取信息:从PKCS12文件中提取公钥/私钥以供以后在SSH-中使用PK-身份认证

希望有所帮助!
丹尼尔