SChannel error: The request was aborted: Could not create SSL/TLS secure channel
SChannel error: The request was aborted: Could not create SSL/TLS secure channel
我正在尝试在以下站点访问和使用 XML:https://www.dhs.gov/ntas/1.1/alerts.xml。但是,当我在开发服务器上 运行 我的应用程序时,我不断收到消息:'The request was aborted: Could not create SSL/TLS secure channel.'。我在我们服务器的事件日志中没有看到任何内容。
奇怪的是,当我从我的本地主机访问提要时,它工作正常。
我的应用程序使用的是 .Net Framework 4.6.2。据我了解,它应该默认支持 TLS12(除非我错了)。当直接浏览link时,我试过的浏览器——Chrome、Firefox、Edge——都可以成功访问并显示XML。 IE11异常,无法显示
我尝试通过以下方式手动添加 TLS12 支持:
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
| SecurityProtocolType.Tls11
| SecurityProtocolType.Tls12
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072 | (安全协议类型)768 | SecurityProtocolType.Tls;
这是我正在使用的代码。如上所述,这适用于本地主机。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(NTASUri);
request.UserAgent = Request.ServerVariables["HTTP_USER_AGENT"];
WebResponse response = request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = reader.ReadToEnd();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(responseFromServer);
return xmlDoc.InnerXml;
有没有人知道如何才能使这项工作正常进行?
谢天谢地,我的系统人员最终解决了这个问题。我们现在可以在我们的服务器上使用提要了。
在注册表中,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Cryptography\Configuration\Local\SSL[=27=]010002\ 键下列出的密码套件是有限的,只有 Windows 支持的密码套件的子集。
删除指定一组密码套件的 Functions 字符串值 returns Windows 客户端到默认值 behavior/order。
更多信息:
https://www.windows-security.org/2c488aac52906551ff218fd5c2bdaddc/ssl-cipher-suite-order
希望这对遇到这种情况的其他人有所帮助。
我正在尝试在以下站点访问和使用 XML:https://www.dhs.gov/ntas/1.1/alerts.xml。但是,当我在开发服务器上 运行 我的应用程序时,我不断收到消息:'The request was aborted: Could not create SSL/TLS secure channel.'。我在我们服务器的事件日志中没有看到任何内容。
奇怪的是,当我从我的本地主机访问提要时,它工作正常。
我的应用程序使用的是 .Net Framework 4.6.2。据我了解,它应该默认支持 TLS12(除非我错了)。当直接浏览link时,我试过的浏览器——Chrome、Firefox、Edge——都可以成功访问并显示XML。 IE11异常,无法显示
我尝试通过以下方式手动添加 TLS12 支持:
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072 | (安全协议类型)768 | SecurityProtocolType.Tls;
这是我正在使用的代码。如上所述,这适用于本地主机。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(NTASUri);
request.UserAgent = Request.ServerVariables["HTTP_USER_AGENT"];
WebResponse response = request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = reader.ReadToEnd();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(responseFromServer);
return xmlDoc.InnerXml;
有没有人知道如何才能使这项工作正常进行?
谢天谢地,我的系统人员最终解决了这个问题。我们现在可以在我们的服务器上使用提要了。
在注册表中,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Cryptography\Configuration\Local\SSL[=27=]010002\ 键下列出的密码套件是有限的,只有 Windows 支持的密码套件的子集。
删除指定一组密码套件的 Functions 字符串值 returns Windows 客户端到默认值 behavior/order。
更多信息:
https://www.windows-security.org/2c488aac52906551ff218fd5c2bdaddc/ssl-cipher-suite-order
希望这对遇到这种情况的其他人有所帮助。