我尝试在我的 Spring 容器中切换到 SSL 套接字:
SSLSocketFactory f = (SSLSocketFactory) SSLSocketFactory.getDefault();
SSLSocket c = (SSLSocket) f.createSocket(socket, srvAddr, srvPort,true);
并得到以下错误:
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
其中套接字已打开正常套接字 (new Socket(srvAddr, srvPort);)
我做错了什么?
最佳答案
这意味着您要连接的服务器没有来自授权 CA 的有效证书。 您必须检查您的信任库是否包含负责您证书的 CA 的证书。
Here你可以找到关于这个主题的教程。
关于java - Tomcat Spring 中的 SSLSocket,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9818847/