不将CERT绑定到Azure流量管理器(仅在HTTPS应用程序服务之前)主机名是否安全?

时间:2019-03-12 21:46:55

标签: azure ssl-certificate azure-traffic-manager

说,我有两个应用程序服务(仅启用HTTPS):

https://myapp1.azurewebsites.net
https://myapp2.azurewebsites.net

我可以使用HTTPS成功调用两个应用程序服务端点。

然后,我创建了一个流量管理器,并将以上两个端点添加到流量管理器中,例如:

myapps.trafficmanager.net

创建流量管理器并添加端点后,trafficanger主机名 myapps.trafficmanager.net 也会自动添加到两个应用程序服务的自定义域中。但是没有SSL绑定到流量管理器主机名。

然后,如果我使用HTTPS呼叫流量管理器端点:https://myapps.trafficmanager.net,则会收到不受信任的SSL证书错误/警告。这是预期的。

由于流量管理器仅在DNS级别上运行,因此实际请求实际上已发送到具有正确SSL证书绑定的应用程序服务端点。我的问题是:

从安全角度来看,在我的代码中使用HTTPS(例如,使用.NET HttpClient)调用非证书绑定的流量管理器endpopint是否安全,但是忽略证书错误?< / p>

2 个答案:

答案 0 :(得分:0)

我最近也设置了其中一个,并与之抗争了一段时间。简短的答案是,它可能是安全的,但听起来您使用的流量管理器可能不正确。如果要使用SSL,则不应将流量管理器中的URL用作终点。而是使用DNS CNAME记录将虚荣域名mycoolsite.com配置为指向myapps.trafficmanager.net

如果要使用SSL和单个URL,则应配置自定义URL并在服务级别安装SSL证书。两个应用程序服务上的自定义URL应该相同。必须在应用程序服务not in Traffic Manager中进行配置。

我不得不读this几次,以了解它是如何工作的,但这很有帮助。

因此,总而言之,要正确设置,步骤如下:

  1. 在两个应用程序服务上配置自定义/个性域
  2. 在两个应用程序服务上均安装SSL证书
  3. 设置和配置流量管理器
  4. 使用DNS CNAME记录将自定义/个性网址指向流量管理器

答案 1 :(得分:0)

由于通过HTTPS使用流量管理器运行状况探针时,服务器证书未通过验证,因此无需将证书与流量管理器绑定。此外,流量管理器在DNS级别工作。客户端直接连接到选定的终结点,而不通过流量管理器。

在这种情况下,您可以将HTTPS用于终结点,并通过HTTPS使用运行状况探针。即使您无法将证书与流量管理器绑定,也可以确保在流量管理器中正确配置了监视端口(例如443而不是80),并且监视路径也指向服务的有效页面。

Another SO answer解释了更多详细信息。如果您仍想使此警告消失,则可以从letsencrypt.org获取免费的SSL,然后使用*.trafficmanager.net将其添加到自定义域中。