Azure 应用服务上的受信任根证书

Posted

技术标签:

【中文标题】Azure 应用服务上的受信任根证书【英文标题】:Trusted root certificate on azure app services 【发布时间】:2021-12-09 08:11:43 【问题描述】:

我有一个 asp.net mvc 应用程序需要访问一个后端 api 和几个使用 自签名证书 的服务。无法控制强制客户端使用正确的证书。

在我的开发环境中,我正在将自签名证书安装在受信任的根证书上以使其正常工作。

但是,在将 asp.net mvc 应用发布到 azure app services 后连接到这些服务时,我遇到了 SSL 认证错误,但我无法找到解决此问题的方法。

有什么方法可以克服这个挑战,比如在 azure 应用服务上安装自签名证书?如果可能的话,我不想忽略代码级别的 ssl 错误,因为这需要对代码的多个部分进行更改。

限制

    客户端提供的生产后端 API 和其他服务使用自签名证书 asp.net mvc 应用必须托管在客户端提供的 azure 应用服务上

【问题讨论】:

【参考方案1】:

根据您的要求回答您只需要连接到具有私有证书的私有端点(您的应用服务可以具有公共端点)。

尝试按照此处概述的指南首先上传私有证书链:https://docs.microsoft.com/en-us/azure/app-service/configure-ssl-certificate#upload-a-private-certificate(确保包含整个链)。

上传私有证书后,请按照本指南从您的代码中访问它:https://docs.microsoft.com/en-us/azure/app-service/configure-ssl-certificate-in-code

从那里你应该能够在你的代码中根据需要使用证书。

【讨论】:

【参考方案2】:

转到 Azure 门户--> 您的应用程序-->“自定义域”并检查是否添加了自定义域。如果未添加,请按照以下步骤添加自定义域:

    请点击“+ 添加自定义域” 输入域并点击验证。 在您的 DNS 域中添加 CNAME 和 TXT 记录以验证域所有权。 点击“添加自定义域”

添加自定义域后,自定义域仍然不安全。您需要添加 SSL 证书。

要添加 SSL 证书,请按照以下步骤操作:

    进入 TLS / SSL 设置并点击“+ 添加 TLS / SSL 绑定” 选择您的自定义域并为您的域导入 .pfx 或公共证书,然后单击添加。 转到自定义域部分并单击“添加绑定”。 选择您的域的证书和 TLS/SSL 类型作为 SNI。 点击“添加绑定”

现在,您可以使用受保护的自定义域访问 API。

请参考TLS/SSL certificate

【讨论】:

以上是关于Azure 应用服务上的受信任根证书的主要内容,如果未能解决你的问题,请参考以下文章

Azure App Service 上的根证书

iOS 中可用的受信任根证书列表

iOS 9 中可用的受信任根证书列表

Edge 无法识别自签名的受信任根证书

如何将该根证书作为受信任的根导入 Azure 应用服务?

Azure 中的客户端证书身份验证和 CA 证书