我正在设置要通过SOAP Web服务与外部系统进行通信的tomcat服务器(为此,我正在使用外部系统存根和apache Axis2库)。 外部系统通过ssl客户端/服务器身份验证进行保护。系统为我提供了.pfx格式的密钥库文件,其中包含两个证书。
我尝试过的事情:
我已经提取了这两个证书,并将其添加到我的密钥库中。我在tomcat/bin/catalina.bat
文件中添加了以下条目
set JAVA_OPTS = %JAVA_OPTS% -Djavax.net.ssl.trustStore=/pathtomykeystore/cacerts -Djavax.net.ssl.keyStore=/pathtomykeystore/cacerts -Djavax.net.ssl.keyStorePassword=changeit -Djavax.net.ssl.trustStorePassword=changeit
通过上述配置,我的请求失败,请求中没有X.509客户端证书HTTP标头。
我启用了ssl日志,然后发现serverHelloDone已打印,然后显示
”找不到合适的客户端证书-继续操作,如果没有 客户端身份验证”
我在SOAPUI工具中尝试过的相同方法,在该方法中,我直接将.pfx文件配置为密钥库,并且在那里可以正常工作
Tomcat和SOPAUI日志之间的区别是 SOAPUI可以成功竞争没有tomcat的客户端身份验证。 在tomcat ssl日志中也缺少以下行
keystore is:
keystoreType is: jks
keystore provider is
Update1: 我从SOAPUI->项目视图-> WS安全配置->密钥库(这是工作配置)中删除了密钥库配置,并在soapui.bat文件中添加了上述的JAVA_OPTS条目,现在SOAPUI也给出了相同的错误。
任何人都可以帮助soap ui如何从在项目视图->密钥库中配置的密钥库中挑选和发送证书