我正在一个分布式应用程序中的服务器上工作,该应用程序具有浏览器客户端,并且还参与与第三方的服务器到服务器通信.我的服务器有一个CA签名证书,让我的客户端使用HTTP/S和XMPP(安全)使用TLS(SSL)通信进行连接.这一切都很好.
现在我需要通过HTTPS/SSL使用JAX-WS安全地连接到第三方服务器.在此通信中,我的服务器在JAX-WS交互中充当客户端,并且我已经由第三方签署了客户端证书.
我尝试通过标准系统配置(-Djavax.net.ssl.keyStore=xyz)添加新的密钥库,但我的其他组件明显受此影响.虽然我的其他组件使用专用参数进行SSL配置(my.xmpp.keystore=xxx, my.xmpp.truststore=xxy, ...),但似乎他们最终使用全局SSLContext.(配置命名空间my.xmpp.似乎表示分离,但事实并非如此)
我也尝试将我的客户端证书添加到我的原始密钥库中,但是 - 我的其他组件似乎也不喜欢它.
我认为我唯一的选择是以编程方式挂钩到JAX-WS HTTPS配置,以便为客户端JAX-WS交互设置密钥库和信任库.
关于如何做到这一点的任何想法/指示?我找到的所有信息要么使用该javax.net.ssl.keyStore方法,要么设置全局SSLContext- 我猜 - 将最终在同一个confilc中.我得到的最接近的东西是这个旧的错误报告请求我需要的功能:添加支持将SSLContext传递给JAX-WS客户端运行时
任何需要?