1

I need you help!</p>

When I used a wcf client to request a web service through https, it got the exception:

An error occurred while making the HTTP request to https://***. This could be due to the fact that the server certificate is not configured properly with HTTP.SYS in the HTTPS case. This could also be caused by a mismatch of the security binding between the client and the server. 

My wcf client binding setting is

<binding name="BasicHttpBinding_MY_SSL" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
        <security mode="Transport">
            <transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
        </security>
</binding>

in the wirshark it got the traffic:

enter image description here

you can see a Alter, it is: enter image description here

My wcf client is running on windows server 2003. We have found the root cause of this exception: on our wcf client it use SSL3 to start SSL handshake with the remote server, but the F5 Firewall for the remote server rejects the connection with SSL3, only allow the connection with Tls (SSL3.1).

But my QUESTION is why the WCF client use SSL3 to start SSL handshake not Tls, as I know windows server 2003 support Tls (SSL3.1) and it always use the highest protocol (Tls) it support to start the SSL handshake, but why don't this happen in my case?

4

0 回答 0