如何验证SOAP请求正在使用TLS版本1.2

时间:2019-01-02 14:54:59

标签: php ssl soap tls1.2

我想强制SOAP请求使用TLS版本1.2。我实现了以下代码,请求也成功提交,但是我仍然无法使用默认的TLS版本或TLS 1.2

$options = array(
                'trace' => 1,
                'exceptions' => true,
                'soap_version' => 'SOAP_1_1',  // use soap 1.1 client
                'connection_timeout' => 30,
                'stream_context' => stream_context_create(array(
                'ssl' => array(
                    'crypto_method' =>  STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT,
                )
            ))
        );

$client = new \SoapClient(self::$_EXACT_URL, $options);

我可以使用https://tlstest.paypal.com/创建CURL请求并测试TLS版本。请参见下面的代码。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tlstest.paypal.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSLVERSION , CURL_SSLVERSION_TLSv1_2);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
$output = curl_exec($ch);
curl_close($ch);
if ($output == 'PayPal_Connection_OK') { echo '<span style="color:green;">' . $output. '</span>'; }
else { echo '<span style="color:red;">' . $output. '</span>'; }

是否有任何肥皂api或代码实现可用来验证自己的tls版本?

谢谢。

0 个答案:

没有答案