教程:使用自定义域和托管证书来保护应用

应用附带的默认域名可能不会以所需方式表示品牌。 在本教程中,使用拥有的 www 域配置应用服务,例如 www.contoso.com,并使用应用服务托管证书保护自定义域。

默认名称已由所有应用服务应用的通配符证书保护,但自定义域需要使用单独的证书进行 TLS 保护。 最简单的方法是使用应用服务中的托管证书。 它是免费的且易于使用,它提供在应用服务中保护自定义域的基本功能。 有关详细信息,请参阅 在 Azure 应用服务中添加和管理 TLS/SSL 证书

先决条件

  • 使用 Azure 应用服务创建应用。
  • 请确保你可以编辑自定义域的 DNS 记录。 要编辑 DNS 记录,需要有权访问域提供商(例如 GoDaddy)的 DNS 注册表。 例如,若要添加 DNS 条目 www.contoso.com,必须能够配置根域的 contoso.com DNS 设置。 自定义域必须位于公共 DNS 区域中;专用 DNS 区域仅在内部负载均衡器(ILB)应用服务环境(ASE)上受支持。

纵向扩展应用

需要将应用纵向扩展到 基本 层。 基本 层满足自定义域(共享)和证书(基本)的最低定价层要求。

步骤 1:Azure 门户中

  1. 在顶部的搜索栏中输入应用的名称。
  2. 使用 应用服务类型选择命名资源。

步骤 2: 在应用的管理页中:

  1. 在边栏菜单中的“设置”下,选择“纵向扩展”(应用服务计划)。
  2. 选中 “基本 B1”复选框。
  3. 选择 选择。 应用更新完成后,会看到一条通知。

有关应用缩放的详细信息,请参阅 在 Azure 应用服务中纵向扩展应用

配置自定义域

步骤 1: 在应用的管理页中:

  1. 在边栏菜单中的 “设置” 下,选择“ 自定义域”。
  2. 选择“+ 添加自定义域”。

步骤 2:“添加自定义域 ”对话框中:

  1. 对于 域提供程序,请选择 所有其他域服务
  2. 对于 TLS/SSL 证书,请选择 “应用服务托管证书”。
  3. 对于域,请根据拥有的域,指定所需的完全限定的域名。 例如,如果你拥有 contoso.com,则可以使用 www.contoso.com
  4. 暂时不要选择“验证”。

对于应用服务中的每个自定义域,需要向域提供商注册两条 DNS 记录。 “ 域验证 ”部分显示这两条 DNS 记录。 选择相应的 “复制 ”按钮,帮助你完成下一步。

创建 DNS 记录

请登录到域提供商的网站。

  1. 查找用于管理 DNS 记录、 域名DNS名称服务器管理 的页面(确切页面因域提供商而异)。
  2. 选择 “添加 ”或相应的小组件以创建 DNS 记录。
  3. 根据 Azure 门户中的 “域验证 ”部分(CNAME、A 或 TXT)选择 DNS 记录类型。
  4. 基于 Azure 门户中“域验证”部分中的“主机”和“值”列配置 DNS 记录。
  5. 请务必为自定义域添加两个不同的记录。
  6. 对于某些提供程序,在选择单独的 “保存更改 ”链接之前,对 DNS 记录的更改不会生效。 截图展示了完成后你的 DNS 记录在 www 子域中应该呈现的样貌。

验证并完成

步骤 1: 返回 Azure 门户中的 “添加自定义域 ”对话框,选择“ 验证”。

步骤 2: 如果 域验证 部分在两个域记录旁边显示绿色复选标记,则已正确配置它们。 选择 并添加。 如果显示任何红色 X,请修复域提供商网站中 DNS 记录设置中的任何错误。

步骤 3: 应会看到添加到列表中的自定义域。 你可能还会看到红色的 X 没有绑定。 等待几分钟,应用服务为自定义域创建托管证书。 完成此过程后,红色 X 将变为绿色复选标记,并带有 安全

在浏览器中进行测试

浏览到前面配置的 DNS 名称(例如 www.contoso.com)。 地址栏现在应显示应用 URL 的安全锁图标,指示它受 TLS 保护。

显示导航到具有自定义域和 TLS 安全性的 App Service 应用程序的屏幕截图。

如果在浏览到自定义域的 URL 时收到 HTTP 404(找不到)错误,浏览器客户端可能缓存了自定义域的旧 IP 地址。 清除缓存,然后再次尝试导航到 URL。 在 Windows 计算机上,可以在终端或“运行”对话框中使用 ipconfig /flushdns 清除缓存。

常见问题

如果我还没有自定义域,该怎么办?

只要不将其删除,该 <app-name>.chinacloudsites.cn 名称将始终分配给应用。 应用服务域由 Azure 管理,并与应用服务集成,因此可以更轻松地与应用一起管理。

此托管证书是否过期?

只要为应用服务应用中的自定义域配置,应用服务托管证书就不会过期。

如何使用我已有的证书来保护我的自定义域?

请参阅 向应用添加专用证书 ,并在 Azure 应用服务中使用 TLS/SSL 绑定保护自定义 DNS 名称