首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JDK-11 SSLHandshakeException:没有合适的协议(协议被禁用或密码套件不合适)

JDK-11 SSLHandshakeException:没有合适的协议(协议被禁用或密码套件不合适)
EN

Stack Overflow用户
提问于 2021-01-28 22:51:03
回答 2查看 4.3K关注 0票数 2

在使用jdk-11 (Oracle 11.0.10)建立HTTPS连接时出现此错误

代码语言:javascript
复制
javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
        at java.base/sun.security.ssl.HandshakeContext.<init>(HandshakeContext.java:170) ~[na:na]
        at java.base/sun.security.ssl.ClientHandshakeContext.<init>(ClientHandshakeContext.java:98) ~[na:na]
        at java.base/sun.security.ssl.TransportContext.kickstart(TransportContext.java:221) ~[na:na]
        at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:394) ~[na:na]
        at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:373) ~[na:na]
        at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:436) ~[httpclient-4.5.13.jar:4.5.13]
        at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:384) ~[httpclient-4.5.13.jar:4.5.13]
        at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142) ~[httpclient-4.5.13.jar:4.5.13]
        at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:376) ~[httpclient-4.5.13.jar:4.5.13]

我尝试禁用或编辑jdk.tls.disabledAlgorithms,但仍然存在相同的问题。

我编辑的java.security在- C:\Program Files\Java\jdk-11.0.10\conf\security

EN

回答 2

Stack Overflow用户

发布于 2021-08-07 18:56:02

此异常是由于TLSv1和TLSv1.1被弃用造成的。

从OpenJDK 8u292、11.0.11和所有版本的OpenJDK 16 read here开始,所有的read here连接都需要使用TLSv1.2或TLSv1.3版本。您可以通过设置Java系统属性来设置要使用的TLS版本。

用于使用HttpsURLConnection

连接:System.setProperty("https.protocols", "TLSv1.2"); Fot SMTPS连接:System.setProperty("mail.smtp.ssl.protocols", "TLSv1.2"); Fot POP3S连接:System.setProperty("mail.pop3s.ssl.protocols", "TLSv1.2");

在客户机源之前使用前面提到的命令。

票数 1
EN

Stack Overflow用户

发布于 2021-06-03 21:40:18

我在java 11.0.11上也遇到了同样的问题。更新您的java或使用以前的版本。它适用于openjdk版本"11.0.8“OpenJDK运行时环境AdoptOpenJDK (build 11.0.8+10)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65939532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档