"无法创建SSL / TLS安全通道"在Azure Web应用程序中

时间:2015-12-23 14:09:22

标签: c# azure iis ssl azure-web-sites

我的Azure Web应用程序需要连接到各种服务器(使用和不使用SSL)。只要我在Windows 10上的本地IIS Express或IIS 7.5中运行应用程序,这就完美无缺。

一旦我将应用程序部署到Azure,它就会停止为需要SSL的某些服务器工作(不是全部)。如果我通过ssllabs运行它们,通常会获得A,而工作的则获得B或C。

所以我假设Azure实例上的.NET支持的密码少于本地支持的密码或类似的东西?

我已尝试过这个

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
                        | SecurityProtocolType.Tls11
                        | SecurityProtocolType.Tls12
                        | SecurityProtocolType.Ssl3;

在没有任何TLS标志的情况下也试过它,因为这是大多数人的建议,但它没有帮助。根据下面的帖子,10月有一个修复,但现在是12月 https://social.msdn.microsoft.com/Forums/en-US/ca6372be-3169-4fb5-870f-bfbea605faf6/azure-webapp-webjob-exception-could-not-create-ssltls-secure-channel?forum=windowsazurewebsitespreview

它也与Cloud Flare无关。

有什么想法吗?或者也许要开始,我如何看到我的应用程序尝试使用的密码和可用的密码?

1 个答案:

答案 0 :(得分:0)

可能不支持SSL3或Tls1.0?我有一个类似的问题,切换到这一切后,一切正常:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12

您可以使用ssllabs来测试您尝试连接的服务器使用哪些协议。

https://www.ssllabs.com/ssltest/