Windows Azure存储证书已过期

Nic*_*sen 45 blob azure blobstorage

我们的Azure blob存储证书今天已过期.这不是我们提供的证书,而是Microsoft提供的证书,如下图所示.如何解决这个问题呢?我试过寻找解决方案,但一无所获.我们的应用程序无法连接到存储,因为证书已过期,我们收到错误消息,指出:无法建立SSL/TLS安全通道的信任关系

在此输入图像描述

dr.*_*ker 26

作为临时措施,我能够登录azure门户并将连接字符串的协议部分从https更改为http.

  • 保持包含敏感数据的blob只能通过HTTPS访问. (13认同)
  • 绝对!如果您有敏感数据,最好等一下...... (5认同)
  • 在配置选项卡上向下滚动到设置,找到您的连接字符串并将`DefaultEndpointsProtocol = https;`更改为`DefaultEndpointsProtocol = http;` (3认同)
  • 小心.如果您在门户网站中更改它,您之前部署的软件包可能无法重新加载,因为它存储在Azure存储中(我相信).这样做会导致我的池中的前两个工作者角色无响应并不断回收. (3认同)

Bri*_*chl 5

如果您可以RDP进入您的角色,还有两种可能的解决方案.

  1. 在c:\ Config目录中手动更改配置.
  2. 构建一个修补的DLL来解决问题,并通过RDP手动上传它.解决方法可以是硬编码连接字符串,也可以放入代码以接受过期的证书.例如:ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

(在MSDN论坛上AlexNS提示想法#2,并向Jason Vallery提供证书验证回调代码)

如评论中所述,禁用HTTPS和/或忽略证书验证错误可能会危及通信的安全性.因此,在您执行此操作之前请仔细考虑,并在Microsoft修复此问题后立即将其更改回来.

  • 请注意,这可以有效地启用[MITM](http://en.wikipedia.org/wiki/Man-in-the-middle_attack)类型攻击.因此,如果你这样做,知道你暴露自己的风险并将其还原第二次微软修复这个! (3认同)