您的位置:首页 > 软件教程 > 教程 > 在Linux环境中部署.NET 8应用读取SSL证书(X509)示例

在Linux环境中部署.NET 8应用读取SSL证书(X509)示例

来源:好特整理 | 时间:2024-06-01 09:46:36 | 阅读:196 |  标签: T Net v S C in AI Azure 环境 代码 实验 app 应用 linux   | 分享到:

在前一篇文章中,我们是把.NET 8应用读取SSL证书(X509)示例部署在App Service Windows环境中,那么如果部署在Linux环境,以及Linux Container中呢? 根据前文中的第一种方法,直接在把证书文件包含在源文件中,通过相对路径读取证书文件的方式,经测试,可以正常工

在前一篇文章中,我们是把.NET 8应用读取SSL证书(X509)示例部署在App Service Windows环境中,那么如果部署在Linux环境,以及Linux Container中呢?

根据前文中的第一种方法,直接在把证书文件包含在源文件中,通过相对路径读取证书文件的方式,经测试,可以正常工作。

但是,对于第二种“ 通过指纹在系统证书库中查找证书 ”的方式,在Linux系统中,是不能使用 X509Store(StoreName.My, StoreLocation.CurrentUser) 中查找的方式。

经过测试验证,在App Service Linux( 包含Linux Container)证书页面上传的证书后,系统会把证书保存为文件。存储在 /var/ssl/ 文件夹中,可以通过ssh 方式查看:

  1. 进入App Service Kudu(高级工具)页面: https://.scm.chinacloudsites.cn/webssh/host
  2. 点击SSH目录,输入cd 目录命令: cd /var/ssl/private 后,列举全部文件: ls -ll

在Linux环境中部署.NET 8应用读取SSL证书(X509)示例

在.NET 8代码中的正确读取私有证书 (.pfx)的代码示例:

注意:

  • WEBSITE_LOAD_CERTIFICATES?配置不可少
  • 门户上的证书添加后,需要重启站点,等待实例中出现证书文件。( 通常在15分钟左右后才能在目录中看见 thumbprint.p12文件 )

附录:示例代码(.NET 8.0 顶级语句 program.cs)

参考资料

在 Linux/Windows 容器中加载证书 : https://docs.azure.cn/zh-cn/app-service/configure-ssl-certificate-in-code#load-certificate-in-linuxwindows-containers

GetX509CertificateLinux(string thumbprint)?: https://learn.microsoft.com/en-us/answers/questions/1055731/application-error-on-linux-running-net-core

Load Certificate on Linux Web App #19305 : https://github.com/MicrosoftDocs/azure-docs/issues/19305

【END】

小编推荐阅读

好特网发布此文仅为传递信息,不代表好特网认同期限观点或证实其描述。

相关视频攻略

更多

扫二维码进入好特网手机版本!

扫二维码进入好特网微信公众号!

本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件[email protected]

湘ICP备2022002427号-10 湘公网安备:43070202000427号© 2013~2024 haote.com 好特网