在Mule ESB中启用TLSv1.2协议,同时点击SOAP Web服务请求
我正在使用一个只通过TLSv1.2协议建立连接的服务。 在SoapUI中在Mule ESB中启用TLSv1.2协议,同时点击SOAP Web服务请求,mule,tls1.2,anypoint-studio,Mule,Tls1.2,Anypoint Studio,我正在使用一个只通过TLSv1.2协议建立连接的服务。 在SoapUI中 -Dsoapui.https.protocols=TLSv1.2:-此参数工作正常,能够从SOAP UI工具中的服务获取响应 mule ESB流上需要类似于上述参数的参数,该参数允许我的请求在代理期间显式使用TLSv1.2协议 我正在使用Mule3.7CE和JDK7。消息流使用CXF代理(CXF:proxy service)通过Https将基于SOAP的请求定向到最终客户端。当一个请求被发送到Mule时,它抛出一个异常,如
-Dsoapui.https.protocols=TLSv1.2:-此参数工作正常,能够从SOAP UI工具中的服务获取响应 mule ESB流上需要类似于上述参数的参数,该参数允许我的请求在代理期间显式使用TLSv1.2协议 我正在使用Mule3.7CE和JDK7。消息流使用CXF代理(CXF:proxy service)通过Https将基于SOAP的请求定向到最终客户端。当一个请求被发送到Mule时,它抛出一个异常,如下所示
Caused by: org.apache.cxf.ws.policy.PolicyException: These policy alternatives can not be satisfied: {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}TransportBinding: TLS is not enabled {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}HttpsToken {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}TransportToken at org.apache.cxf.ws.policy.AssertionInfoMap.checkEffectivePolicy(AssertionInfoMap.java:179) ~[cxf-rt-ws-policy-2.7.15.jar:2.7.15]
已尝试通过tls-default.conf文件启用协议,但添加系统参数和服务器参数也无效
以下是使用安全策略的wsdl片段-
<wsp:Policy wsu:Id="XYSPolicyID">
<wsp:ExactlyOne>
<wsp:All>
<sp:TransportBinding
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
<wsp:Policy>
<sp:TransportToken>
<wsp:Policy>
<sp:HttpsToken RequireClientCertificate="false" />
</wsp:Policy>
</sp:TransportToken>
<sp:AlgorithmSuite>
<wsp:Policy>
<sp:Basic256 />
</wsp:Policy>
</sp:AlgorithmSuite>
<sp:Layout>
<wsp:Policy>
<sp:Strict />
</wsp:Policy>
</sp:Layout>
</wsp:Policy>
</sp:TransportBinding>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
任何帮助都将不胜感激 您可以配置加密协议和密码套件I'm MULE_HOME/tls default.conf如前一个回复中所述,
enabledProtocols=TLSv1.2
应该可以做到这一点
如果仍然存在问题,可以使用以下方法进行故障排除:
使用以下标志启动Mule-M-Djavax.net.debug=ssl:handshake:verbose
这样,您将能够看到实际的握手过程
另一个有用的工具是确定目标系统支持的协议和密码套件
也可以考虑安装java加密扩展包。
嗯,纳胡尔。谢谢您的回复。我已经配置了这些协议。tls-default.conf放置在mule主路径中。我已经在conf文件的下面部分取消了注释。enabledProtocols=TLSv1、TLSv1.1、TLSv1.2,问题仍然存在。在wrapper.conf中添加了一个条目作为#include%MULE_BASE%/conf/tls-default.conf,您只需要放置tls 1.2,如下所示:enabledProtocols=TLSv1.2仅放置TLSv1.2。仍然显示相同的异常。还尝试了许多系统参数的组合。-Djdk.tls.client.protocols=TLSv1.2-Ddeployment.security.TLSv1.2=true-Dhttps.protocols=TLSv1.2-DSSLProtocols=TLSv1.2-DenabledProtocols=TLSv1.2是否在Web服务使用者中启用tls?