什么设置了C#中使用的TLS版本

时间:2018-11-15 19:45:16

标签: c# ssl

我有一个C#Web应用程序,其中引用了许多项目。

根网站项目设置为4.7.1框架版本

在其中一个子项目中(使用WebRequest.Create()发出Web请求),该项目也设置为4.7.1

据我了解,从4.6版开始,任何版本都使用Tls 1.2,但是当我运行该项目时,

ServicePointManager.SecurityProtocol

解析为Ssl3

此应用程序托管在Azure中,不确定是否有影响

那么,什么设置决定要使用哪个TLS?这仅在我们启用TLS 1.2的VM中有效,而在Azure中不起作用

1 个答案:

答案 0 :(得分:0)

只需在应用程序启动期间或发出任何请求之前设置SecurityProtocol属性:

const SecurityProtocolType tlsOnly = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12
ServicePointManager.SecurityProtocol = tlsOnly;