SoapUI TLS 1.2

by Patrick Connelly posted on June 27, 2016

Soon, Salesforce will be requiring all connections to be TLS v1.1 or higher. This poses a problem for anyone using SoapUI with Java version 1.7 as that version of Java does not have TLS 1.1 or higher enabled by default. If you attempt to connect to an instance that has the “Require TLS 1.1 or higher for HTTPS connections” enabled you will get an error like the following

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sf="urn:fault.enterprise.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
        <soapenv:Fault>
            <faultcode>sf:UNSUPPORTED_CLIENT</faultcode>
            <faultstring>UNSUPPORTED_CLIENT: TLS 1.0 has been disabled in this organization. Please use TLS 1.1 or higher when connecting to Salesforce using https.</faultstring>
            <detail>
                <sf:UnexpectedErrorFault xsi:type="sf:UnexpectedErrorFault">
                    <sf:exceptionCode>UNSUPPORTED_CLIENT</sf:exceptionCode>
                    <sf:exceptionMessage>TLS 1.0 has been disabled in this organization. Please use TLS 1.1 or higher when connecting to Salesforce using https.</sf:exceptionMessage>
                </sf:UnexpectedErrorFault>
            </detail>
        </soapenv:Fault>
    </soapenv:Body>
</soapenv:Envelope>

Check SoapUI Java Version

If you want to see what version of Java your SoapUI is using you can goto Help ⇨System Properties you can see an entry like

java.version=1.7.0_55

If you see something higher than 1.7 (like 1.8) then you should be fine

Setting SoapUI TLS Version

Turns out enabling TLS 1.2 for SoapUI is really easy. You just need to add a java option to the start of SoapUI. How to add this varies depending on your operating system but the parameter is

-Dsoapui.https.protocols=SSLv3,TLSv1.2

Linux

Doing this in Linux is a bit more complicated than it is in OSX. You’ll want to modify the bin/soaup.sh file and add the line

JAVA_OPTS="$JAVA_OPTS -Dsoapui.https.protocols=SSLv3,TLSv1.2"

OSX

In OSX you’ll want to add the parameter to the end of the vmoptions.txt file that lives at

/Applications/SoapUI-{VERSION}.app/Contents

Windows

In Windows you’ll want to add the parameter to the end of the .vmoptions file that lives at

C:\Program Files\SmartBear\SoapUI-{VERSION}\bin\SoapUI-{VERSION}.vmoptions