我试图让相互 SSL 从 Java 客户端工作。我的soapUI 配置适用于我在WS-security 配置中指定keystore 和truststore 的地方。
当我对具有以下系统参数的 Java 客户端执行相同操作时
System.setProperty("javax.net.ssl.keyStore", "D:\\certs\\client_keystore.jks");
System.setProperty("javax.net.ssl.keyStorePassword", "changeit");
System.setProperty("javax.net.debug", "all");
System.setProperty("javax.net.ssl.trustStore", "D:\\certs\\truststore.jks");
System.setProperty("javax.net.ssl.trustStorePassword", "trustpass");
我收到这个错误
main, received EOFException: error
main, handling exception: javax.net.ssl.SSLHandshakeException: Remote host closed
connection during handshake
main, SEND TLSv1 ALERT: fatal, description = handshake_failure
Padded plaintext before ENCRYPTION: len = 18
我启用了这个:System.setProperty("javax.net.debug", "all");
从调试日志中我看到:
*** Certificate chain
***
我该如何调试这个问题?