强制配置在wcf客户端c#中使用tls 1.0

本文关键字:tls 配置 wcf 客户端 | 更新日期: 2023-09-27 18:13:38

我们有一个web应用程序,有一个客户端实现与WCF。该客户端使用ssl_lvv3与外部服务进行握手。事实证明,该服务只是禁用了SSL_LVL3,因此我们需要将其更改为TLS 1.0。c#中有一种强制TLS安全性的方法:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;

但是它改变了应用程序使用的所有服务的安全性,并不是所有的服务都接受TLS。

我们想要的是改变网络。配置强制WCF服务使用TLS。有什么办法可以做到吗?

服务的绑定:

<binding name="XXXX" closeTimeout="00:01:00" openTimeout="00:01:00" 
    receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false"  
    bypassProxyOnLocal="false" NameComparisonMode= "StrongWildcard" 
    maxBufferPoolSize="524288" maxBufferSize="655360" 
    maxReceivedMessageSize="655360" textEncoding="utf-8"
    transferMode="Buffered" useDefaultWebProxy="true"  
    messageEncoding="Text">
    <security mode="Transport" />
 </binding>

强制配置在wcf客户端c#中使用tls 1.0

<customBinding >
  <binding name="CusSoap">                  
       <sslStreamSecurity requireClientCertificate="true"   sslProtocols="Ssl3|Tls|Tls11|Tls12" />                    
        </binding>

但是它在Visual Studio 2015中可用。. Net Framework 4.5.2)