【问题标题】:force wsimport (Java 10/11) to tolerate TLSv1 and weak cipher强制 wsimport (Java 10/11) 容忍 TLSv1 和弱密码
【发布时间】:2018-07-29 17:26:56
【问题描述】:
我使用wsimport 从特定的WSDL 生成代码。我尝试了 Java 10,但握手失败,然后我尝试了 Java 9,一切正常。
我使用wireshark 观察通信,原因很清楚,我通信的服务器仍然使用 TLSv1,我猜 Java 10 wsimport 不再容忍这种情况(至少默认情况下不会),尽管 9 可以。
我对服务器无能为力,所以问题变成了如何运行具有 TLSv1 容差的 Java 10 wsimport?
【问题讨论】:
标签:
security
wsimport
java-10
tls1.0
java-11
【解决方案1】:
进行了更多调查,最有用的测试是使用ssl labs 完成的。原来服务器支持弱密码套件:TLS_RSA_WITH_3DES_EDE_CBC_SHA。
通过添加以下 java 选项解决了该问题:
-Dhttps.cipherSuites=SSL_RSA_WITH_3DES_EDE_CBC_SHA
无法将密码套件指定为TLS_RSA_WITH_3DES_EDE_CBC_SHA。 Java 的命名约定要求将其命名为SSL_RSA_WITH_3DES_EDE_CBC_SHA。
旁注:上面@nullpointer 评论中提到的错误在我尝试的所有三个版本中都已解决:Java 9/10/11。