我们有一个使用Mule standalone 3.5的应用程序(我知道......),需要强制它使用TLS 1.1或1.2进行HTTPS。
我们已升级到最新的Java 8(8u112)。 我们修改了mule的tls-default.conf以包含以下内容:
enabledProtocols=SSLv2Hello,
TLSv1.1
TLSv1.2
我们的HTTPS GET请求导致异常:
没有合适的协议(协议被禁用或密码套件 不恰当的)(javax.net.ssl.SSLHandshakeException)
有没有让Mule 3.5的https连接器使用TLS 1.1或1.2进行HTTPS?
我们的应用程序还使用Salesforce连接器<sfdc:...>
,它在我们的Java升级和配置更改后使用TLS 1.2正常工作。
请注意,Mule 3.5仍然有一个单独的HTTPS连接器(而不是3.6中引入的HTTP / HTTPS组合连接器)。
我们希望避免升级到更新版本的Mule,因为我们打算在不久的将来取代我们对Mule的使用,而我们对升级的调查并不表示它很容易。
更新 :
除了在Ryan Carter的答案中使用修复程序外,我还必须通过转义换行符来解决tls-default.conf中的错误:
enabledProtocols=SSLv2Hello, \
TLSv1.1 \
TLSv1.2
答案 0 :(得分:4)
是的,Salesforce连接器会自动使用JDK的默认TLS版本。
但是对于https连接器,您需要向https连接器添加属性:
ArrayList<FloatList> [][] values = new ArrayList[3][3];