为什么 Visual Studio 2017 使用 TLS 1.0?

Why is Visual Studio 2017 using TLS 1.0?

在 Windows 7 box 上新安装 Visual Studio 2017 Enterprise。

NUnit 测试项目(针对 .NET 4.7)中的 Http 请求正在使用 TLS 1.0 并且由于服务器需要 1.1 或更高版本而失败。

然而,同一测试项目(针对 .NET 4.6.1)之前在 Visual Studio 2015 年同一台机器上运行良好。我没有记录告诉我它使用的是 TLS 1.1 还是 1.2,但它可以正常工作。在此期间对项目的任何更改都与 SSL/TLS.

无关

此外,同一个测试项目在另一台装有 VS 2017 Enterprise 和 Windows 10 的机器上运行良好。

怎么会这样?在哪里可以找到and/or设置默认使用SSL/TLS版本的配置?

.Net Framework 4.7 will use the default TLS version 为特定的 Windows.

TLS Version now matches Windows
Network security is increasingly important, particularly for HTTPS. We’ve had requests for .NET to match the Windows defaults for TLS version. This makes machines easier to manage.

因此,请确保您已安装 TLS update 并将默认值配置为使用 TLS 1.2。