C# HTTPS上的WCF服务(自托管)-获取协商的SSL/TLS协议版本
出于安全原因,我们希望在服务器的操作系统级别禁用TLS 1.0支持(在下面的SChannel注册表中): 但是由于这个原因,我们不得不在操作系统级别启用TLS1.0 我们现在试图做的是强制在应用程序级别而不是操作系统级别使用TLS1.2 我们的应用程序是客户端服务器,运行在.NET4.5上。 在客户端上,在调用WCF服务之前,我们设置:C# HTTPS上的WCF服务(自托管)-获取协商的SSL/TLS协议版本,c#,.net,wcf,ssl,C#,.net,Wcf,Ssl,出于安全原因,我们希望在服务器的操作系统级别禁用TLS 1.0支持(在下面的SChannel注册表中): 但是由于这个原因,我们不得不在操作系统级别启用TLS1.0 我们现在试图做的是强制在应用程序级别而不是操作系统级别使用TLS1.2 我们的应用程序是客户端服务器,运行在.NET4.5上。 在客户端上,在调用WCF服务之前,我们设置: ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 这确保客户端将使用TLS
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
这确保客户端将使用TLS1.2协议发送ClientHello消息
但在服务器上,即自托管WCF服务上,我们看不到如何强制使用TLS1.2。服务器端的SSL/TSL协商基于SChannel注册表,因此设置ServicePointManager.SecurityProtocol不会产生任何效果
我们希望在服务器代码中检查传入的WCF调用,并检查用于该调用的TLS协议,如果该协议小于TLS1.2,则关闭连接
有没有办法获取传入WCF呼叫SSL/TLS协议版本?类似于?你有没有想过?我也面临同样的挑战。谢谢
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;