Azure App Service 上的根证书

Posted dotNET跨平台

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Azure App Service 上的根证书相关的知识,希望对你有一定的参考价值。

点击上方蓝字关注“汪宇杰博客”

原文:Amol Mehrotra

翻译:Edi Wang

导语

App Service 有一个受信任的根证书列表,您不能在 App Service 的多租户版本中修改这些证书,但您可以在应用服务环境 (ASE) 的受信任根存储中加载自己的 CA 证书,这是一个单一 App Service 的租户环境。(免费、基本、标准和高级应用服务计划都是多租户,而独立计划是单租户)

当 Azure 应用服务上托管的应用尝试通过 SSL 连接到远程终端时,远程终端服务上的证书必须由受信任的根 CA 颁发,这一点很重要。如果远程服务上的证书是自签名证书或私有 CA 证书,则托管您的应用程序的实例将不信任它,并且 SSL 握手将失败并显示以下错误:

"Could not establish trust relationship for the SSL/TLS secure channel".

在这种情况下,有两种解决方案:

  1.  使用远程服务器上 App Service 中受信任的根证书颁发机构之一颁发的证书。

  2. 如果无法更改远程服务终结点证书或需要使用私有 CA 证书,请将您的应用托管在应用服务环境 (ASE) 上并在受信任的根存储中加载您自己的 CA 证书

使用 Kudu 获取受信任的根证书列表

如何获取 Kudu

转到 Azure 门户,Web 应用程序,开发工具 > 高级工具,然后单击“Go ->”。Kudu 工具将打开一个新选项卡。接下来的步骤将取决于您使用的是 Linux 还是 Windows 应用程序。

Windows

转到 Debug console > Powershell,将出现一个 Powershell 窗口。在控制台中输入以下命令:

dir cert:\\localmachine\\root

Linux

转到 SSH 并输入以下命令:

cd /etc/ssl/certs 

ls | find *.pem

汪宇杰博客

Azure | .NET | 微软 MVP

无广告,不卖课,做纯粹的技术公众号

以上是关于Azure App Service 上的根证书的主要内容,如果未能解决你的问题,请参考以下文章

从密钥保险库将证书上载到App Service

移动设备上的 Azure App Service 身份验证问题

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

微软Azure平台 cloud service动态绑定多个证书碰到的坑

为在 Azure App Service Linux 上运行的容器创建卷

Azure App Service for Linux是否支持http2?