您可以手动设置 Savon 客户端 gem 的 SSL cert_store 吗?

问题描述 投票:0回答:1

上下文

我目前正试图让我的Savon客户端从默认的系统SSL cert文件夹中读取一个同行证书。基本上,我想产生的效果是调用 set_default_paths 在Savon客户端的http cert存储上。

本质上,我试图明确地在Savon客户端的http证书存储上设置 cert_store 为Savon客户提供 OpenSSL::X509::Store.new 这样我就可以手动调用 set_default_paths 并强迫它使用系统证书。

我一直在看 Savon 的文档,虽然我看到有一些方法可以传递 certskeys,但我没有找到明显的方法来做到这一点。

ruby-on-rails ruby openssl ssl-certificate savon
1个回答
0
投票

以下工作。

client = Savon.client wsdl:'https://tckimlik.nvi.gov.tr/Service/KPSPublicV2.asmx?WSDL', convert_request_keys_to: :none
cert_store = OpenSSL::X509::Store.new
cert_store.set_default_paths
client.globals.ssl_cert_store cert_store
response = client.call :kisi_ve_cuzdan_dogrula, message: message
© www.soinside.com 2019 - 2024. All rights reserved.