【发布时间】:2015-04-02 03:45:20
【问题描述】:
我有一个在 Azure 网站中运行 .NET 4.5 的 ASP.NET MVC 网站,我在尝试使用 Azure SDK(版本 4.3.0)检索或上传资产到 Azure Blob 存储时不断收到此错误。
请求被中止:无法创建 SSL/TLS 安全通道。
Microsoft.WindowsAzure.Storage.StorageException:请求是
中止:无法创建 SSL/TLS 安全通道。 --->
System.Net.WebException:请求被中止:无法创建
SSL/TLS 安全通道。在 System.Net.HttpWebRequest.GetResponse()
在
Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T] (RESTCommand`1 cmd, IRetryPolicy 策略, OperationContext operationContext) ---
内部异常堆栈跟踪结束 --- at
Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand`1
cmd, IRetryPolicy 策略, OperationContext operationContext) at
Microsoft.WindowsAzure.Storage.Blob.CloudBlobClient.GetBlobReferenceFromServer(StorageUri
blobUri、AccessCondition accessCondition、BlobRequestOptions 选项、
OperationContext operationContext) 在
Microsoft.WindowsAzure.Storage.Blob.CloudBlobClient.GetBlobReferenceFromServer(Uri
blobUri、AccessCondition accessCondition、BlobRequestOptions 选项、
OperationContext operationContext)
错误不会每次都发生,但一旦开始发生,它就会连续发生。只有当我向上或向下缩放 Azure 网站以重置网站时,错误才会停止。它会持续几个小时或几天,然后又会回来。
这似乎是在 Poodle 漏洞出现时开始发生的,并且网站关闭了对 SSL3 的支持。从我所做的研究看来,如果 Azure SDK 尝试通过 SSL3 连接到 Azure Blob 存储,则可能出现此错误。由于它可以正常工作一段时间,我想知道我的应用程序中的某些库是否将 ServicePointManager.SecurityProtocol 设置为 SSL3,这是 Azure 从那时起在导致错误时使用的全局设置。有什么想法可以确定这是否正在发生或如何找到将回退设置为 SSL3 的代码?
【问题讨论】:
-
@ATechieThought 我认为这不是问题,因为这与安装正确的客户端证书有关,而使用 Azure SDK 不需要。该代码也可以正常工作一段时间,直到它停止工作。
-
这肯定是 SSL-TLS 问题。从异常消息中可以很明显地看出。还尝试查看来自可能是提琴手之类的工具的请求标头。 blogs.msdn.com/b/ieinternals/archive/2011/03/26/…
-
我有一个类似的问题.. 我从来没有能够在本地或几乎相同的其他天蓝色站点上重现它,只是在生产站点上(也许这与比仅开发站点有更多的请求有关? )。让我抓狂的是,它完美地运行了几天,然后开始出现这个错误.. 作为一个生产环境,我不能过多地摆弄它:(
标签: c# asp.net-mvc azure-web-app-service azure-sdk-.net poodle-attack