为什么我需要一个自定义域来使SSL到我的端点

问题描述:

这是一个比实际问题更为理论化的问题。为什么我需要一个自定义域来使SSL到我的端点

我在Azure中四个不同的应用服务(每一个为devtstaccprd),我想用SSL保护他们。

因此,在门户网站Azure中,我选择了一个端点 -dev.azurewebsites.net,然后我转到SSL证书(我已经上传了证书)。然后,当我点击添加SSL绑定时,需要主机名

我可以使用“自定义域”选项创建主机名。但这将意味着一些成本和额外的工作。这不是广泛的,工作量不是很多,但我想知道的是:

如果我可以通过使用其端点(something-dev.azurewebsites.net)访问我的应用服务,为什么我不能直接添加SSL绑定到这个端点吗?为什么我需要一个自定义域名?

我可能缺乏一些有关SSL的知识,所以我非常感谢一个解释。谢谢。

您可以直接使用带有SSL的.azurewebsites.net端点(开箱即用)。但是,不这样做的原因是,该特定域不属于您,它在Azure上运行的每个其他Web应用程序之间共享。因此,对于开发/测试环境通常很好,并且证明您的网站可以在https:ok上正常工作,但是在进行生产时,您应该真正使用自己的自定义域 - 您所指的设置会将您引导至该路径,然后可以导入相应的证书。

从相关应用服务Azure documentation

要使用HTTPS确保具有自定义域名的应用程序,添加一个证书了该域名。默认情况下,Azure通过一个SSL证书保护* .azurewebsites.net通配符域,因此您的客户端可以通过https://.azurewebsites.net访问您的应用。但是,如果您想使用自定义域名,例如contoso.com,www.contoso.com和* .contoso.com,则默认证书无法保证这一点。此外,与所有通配符证书一样,默认证书的安全性不如使用自定义域和该自定义域的证书的安全性。

+0

我明白了。事实上,有一个指向* .azurewebsites.net的证书也解释了为什么我可以用'https'访问相同的端点。但是,如果我想用适当的客户端证书验证来开发和测试端点,那么我必须创建自己的自定义域,对吗? – Rick

+0

Azure正在给你“适当的客户端证书验证”,但它是通过它自己的通配符,而不是你的 - 所以当你在* .azurewebsites.net上使用https时,你的测试是很好和有效的,只是不建议你使用该域进行生产。 Azure现在也为您提供门户网站中的DNS管理,因此您可以做到这一点并获得证书,将其存储在您的保险箱中,并在不离开门户网站的情况下分配给您的应用服务,并全部使用您的天蓝信用/帐单。 –

+0

我之前可以将自定义SSL证书添加到默认主机名。由于某种原因它现在不允许我(下拉菜单现在只包含自定义域名)。 我不记得上次我做了什么,但它绝对使用azurewebsites域的自定义证书。 –

实际上,您不需要自定义域来使用自己的证书。正如我上面评论的那样,我已经忘记了如何去做。但我现在记得。

在您的Web应用程序服务设置菜单中,转至应用程序设置。

向下滚动到应用程序设置。

在关键框中键入“WEBSITE_LOAD_CERTIFICATES”

在值框中键入您的自定义SSL证书的指纹。

编辑:不要忘了实际上传SSL证书。