Windows 7 中的错误:请求被中止:无法创建 SSL/TLS 安全通道
Posted
技术标签:
【中文标题】Windows 7 中的错误:请求被中止:无法创建 SSL/TLS 安全通道【英文标题】:Error in Windows 7: The request was aborted: Could not create SSL/TLS secure channel 【发布时间】:2020-11-30 19:14:27 【问题描述】:我有以下问题: 如果我用网络浏览器打开地址https://info.protectiacivila.ro/test.php 然后是文本“你好!”显示出来。
我在 Windows 窗体应用程序(目标:.NET 4.5)中编写了以下单击事件处理程序:
private void button1_Click(object sender, EventArgs e)
Uri uri = new Uri("https://info.protectiacivila.ro/test.php");
ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12;
HttpWebRequest request = WebRequest.Create(uri) as HttpWebRequest;
try
string strResponse;
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
StreamReader reader = new StreamReader(response.GetResponseStream());
strResponse = reader.ReadToEnd();
MessageBox.Show(strResponse);
catch (Exception ex)
MessageBox.Show(ex.Message);
上述方法应显示消息“Hello!” 它在 Windows 10 中完美运行。 这意味着 SSL 证书有效。
但是,在 Windows 7 中,它会显示错误消息: 请求已中止:无法创建 SSL/TLS 安全通道。
如何才能使上述方法在 Windows 7 中也能正常工作?
谢谢
【问题讨论】:
是打补丁的windows 7吗?看起来像TLS 1.2 comes with Win7 SP1 我有 Win 7 SP1 64 位。更新 KB3140245 已安装。我还应该做些什么吗? 不确定,请深入阅读该链接。你知道 Windows 7 支持ended in January 2020 对吗?它不再接收安全更新,您应该考虑将您的机器迁移到更新的操作系统。 【参考方案1】:Windows 7 SP1 似乎支持 TLS 1.1 和 1.2,但默认情况下未启用。此错误也会出现,例如当您想在 Windows 7 上使用 GIT 时。解决方案是通过注册表启用它:
-
您需要创建一个注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client
-
添加一个值为
DisabledByDefault
的DWORD 32位
来源:https://manage.accuwebhosting.com/knowledgebase/3008/How-do-I-enable-TLS-1-2-on-Windows-7.html
【讨论】:
谢谢。启用 TLS 1.2 对我有用。 太棒了!我无法再将 Git 与 Bitbucket 一起使用……也为我工作,谢谢!以上是关于Windows 7 中的错误:请求被中止:无法创建 SSL/TLS 安全通道的主要内容,如果未能解决你的问题,请参考以下文章
Api 随机调用失败 - 请求被中止:无法创建 SSL/TLS 安全通道
错误 Paypal 沙箱:请求被中止:无法创建 SSL/TLS 安全通道
HttpClientHandler / 请求被中止:无法创建 SSL/TLS 安全通道