上下文
我目前正试图让我的Savon客户端从默认的系统SSL cert文件夹中读取一个同行证书。基本上,我想产生的效果是调用 set_default_paths
在Savon客户端的http cert存储上。
本质上,我试图明确地在Savon客户端的http证书存储上设置 cert_store
为Savon客户提供 OpenSSL::X509::Store.new
这样我就可以手动调用 set_default_paths
并强迫它使用系统证书。
我一直在看 Savon 的文档,虽然我看到有一些方法可以传递 certskeys,但我没有找到明显的方法来做到这一点。
以下工作。
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