Я использую одну услугу, которая устанавливает соединение только через протокол TLSv1.2. В SoapUI
-Dsoapui.https.protocols = TLSv1.2: - Этот параметр отлично работает и способен получить ответ от службы в инструменте интерфейса SOAP.Включить протокол TLSv1.2 в Mule ESB при выполнении запроса веб-службы SOAP
Нужно что-то подобное, как приведенный выше параметр, в поток ESB мула, который позволяет моему запросу использовать протокол TLSv1.2 явно при проксинге.
Я использую Mule 3.7 CE & JDK 7. В потоке сообщений используются прокси CXF (cxf: proxy-service), чтобы направлять запросы на основе SOAP через Https к конечному клиенту. Когда запрос отправляется в 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>
Любая помощь была бы оценена !!
Спасибо за ваш ответ. Я уже настроил эти протоколы. tls-default.conf помещается в домашний путь мула. И я раскоментировал ниже раздел файла conf. enabledProtocols = TLSv1, TLSv1.1, TLSv1.2 –
и проблема все еще сохраняется. В wrapper.conf добавлена одна запись как #include% MULE_BASE%/conf/tls-default.conf –
Вам нужно поставить только TLS 1.2, например: enabledProtocols = TLSv1.2 –