我怎么知道SoapClient在php中使用了哪个SSL版本?

时间:2015-01-20 04:11:34

标签: php ssl soap-client handshake sslv3

我们通过SOAP与服务集成,我们使用SoapClient。 由于POODLE ssl3 vulnerability服务提供商将在这些服务器上禁用SSLv3。

我找不到有关SoapClient在PHP中使用哪个SSL版本的任何有用信息。 我也不明白如何在SoapClient和PHP< 5.5中使用特定版本的SSL(因为版本5.5在SoapClient构造函数中有一个选项,ssl_method)。

似乎PHP 5.3和SoapClient指定SSL版本的唯一方法是使用streaming context for ssl。据我所知,我可以指定ciphers list,但这对我来说是黑水。我怎么知道使用哪些密码来确保客户端不想通过SSLv3执行请求?

总而言之,我真的应该担心吗?似乎服务器有责任告诉客户端使用哪个SSL版本,不是吗?如果我过去没有指定确切的(3)版本,我们的服务提供商的SSLv3关闭不会影响我们吗?

1 个答案:

答案 0 :(得分:0)

您将SSL 与SSLv3 密码混淆。 PHP正在使用的库是为系统构建或打包时可用的库。您可以找到php_info()或类似命令中的特定版本。

要禁用SSLv3(密码),只需使用TLSv1作为密码即可。为此,将可选的options array传递给SoapClient构造函数:

  

ssl_method选项是SOAP_SSL_METHOD_TLS之一,   SOAP_SSL_METHOD_SSLv2,SOAP_SSL_METHOD_SSLv3或   SOAP_SSL_METHOD_SSLv23。

在这里,您将使用SOAP_SSL_METHOD_TLS