2015-09-21 15 views
6

Chúng tôi có ứng dụng web có ứng dụng khách được triển khai với WCF. Máy khách này sử dụng SSL_LVL3 để bắt tay với một dịch vụ bên ngoài. Nó chỉ ra rằng dịch vụ vừa vô hiệu hoá SSL_LVL3, vì vậy chúng ta cần thay đổi nó thành TLS 1.0. Có một cách để buộc TLS an ninh trong C#:Buộc bằng cấu hình để sử dụng tls 1.0 trong ứng dụng khách wcf C#

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; 

Nhưng nó thay đổi sự an toàn của tất cả các dịch vụ được sử dụng bởi các ứng dụng và không phải tất cả các dịch vụ chấp nhận TLS.

Điều chúng tôi muốn là thay đổi web.config để buộc dịch vụ WCF sử dụng TLS. Có cách nào để làm điều này không?

Đây là ràng buộc của các dịch vụ:

<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> 

Trả lời

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

Nhưng nó có sẵn trong Visual Studio 2015 (.Net Framework 4.5.2)

Các vấn đề liên quan