Java 8可正常建立SSL连接,Java 17连接失败求助
Java 17下SSL/TLS连接REST API握手失败(Java 8正常)求助
我在通过SSL(TLS)连接调用REST API时遇到问题,持有数据提供方的私钥和签名证书,已用这些文件创建密钥库(keystore),并通过代码构建SSLContext,在与提供方服务器建立HTTP连接时使用该上下文。目前的问题是:Java 8下可正常建立连接,但Java 17下握手失败。
我想知道遗漏了什么?Java 8的证书是否兼容Java 17?我了解到Java 17引入了TLSv1.3,但使用该版本时SSL握手同样失败。尝试过Java 11和Java 17,发现仅Java 8下的SSLContext可正常工作并获取REST响应。
恳请有类似经验或了解可能原因的人士提供帮助。以下是日志片段(端点已掩码):
19:06:42.772 [main] DEBUG org.apache.http.impl.conn.PoolingHttpClientConnectionManager - Connection request: [route: {tls}->http://<proxy_URL>:82->https://<endpoint_URL>:443][total available: 0; route allocated: 0 of 50; total allocated: 0 of 60000] 19:06:42.793 [main] DEBUG org.apache.http.impl.conn.PoolingHttpClientConnectionManager - Connection leased: [id: 0][route: {tls}->http://<proxy_URL>:82->https://<endpoint_URL>:443][total available: 0; route allocated: 1 of 50; total allocated: 1 of 60000] 19:06:42.795 [main] DEBUG org.apache.http.impl.execchain.MainClientExec - Opening connection {tls}->http://<proxy_URL>:82->https://<endpoint_URL>:443 19:06:42.818 [main] DEBUG org.apache.http.impl.conn.DefaultHttpClientConnectionOperator - Connecting to <proxy_URL>/10.10.10.11:82 19:06:42.821 [main] DEBUG org.apache.http.impl.conn.DefaultHttpClientConnectionOperator - Connection established 10.10.10.10:55188<->10.10.10.11:82 19:06:42.823 [main] DEBUG org.apache.http.headers - http-outgoing-0 >> CONNECT <endpoint_URL>:443 HTTP/1.1 19:06:42.823 [main] DEBUG org.apache.http.headers - http-outgoing-0 >> Host: <endpoint_URL> 19:06:42.823 [main] DEBUG org.apache.http.headers - http-outgoing-0 >> User-Agent: Apache-HttpClient/4.5.13 (Java/17.0.4) 19:06:42.824 [main] DEBUG org.apache.http.wire - http-outgoing-0 >> "CONNECT <endpoint_URL>:443 HTTP/1.1[\r][\n]" 19:06:42.824 [main] DEBUG org.apache.http.wire - http-outgoing-0 >> "Host: <endpoint_URL>[\r][\n]" 19:06:42.824 [main] DEBUG org.apache.http.wire - http-outgoing-0 >> "User-Agent: Apache-HttpClient/4.5.13 (Java/17.0.4)[\r][\n]" 19:06:42.824 [main] DEBUG org.apache.http.wire - http-outgoing-0 >> "[\r][\n]" 19:06:42.871 [main] DEBUG org.apache.http.wire - http-outgoing-0 << "HTTP/1.1 403 Forbidden[\r][\n]"
内容的提问来源于stack exchange,提问作者ishan
相关产品推荐
相关产品推荐

