java x509certificate2_Azure,App-service,从字符串创建X509Certificate2对象

既然没有人回答过这个问题,我会尽力去做 . 如果我错了请纠正我,但我认为问题是以下代码行:

new X509Certificate2(Convert.FromBase64String(cerStr), string.Empty, X509KeyStorageFlags.MachineKeySet)

此行代码将尝试将新证书添加到虚拟机的证书存储中 . 运行时使用的所有证书都需要托管在某个商店中 . 这不是一个好主意,因为托管应用程序服务的虚拟机的证书存储区不应该存储任何内容,它是您在使用应用程序服务时不关心的基础结构的一部分 .

您需要做的是通过天蓝色门户上传证书(如果它们尚未存在) . 为此,我最终重新使用了已经存在的SSL证书 . 完成后,您可以在代码中检索该证书 . 您需要在Azure门户中的“应用程序设置”键下为您的应用程序服务添加一个新的应用程序设置,名为WEBSITE_LOAD_CERTIFICATES . 该值应该是证书的指纹 .

要检索证书,您应该执行以下操作:

public async Task GetCertificate(string certificateThumbprint)

{

var store = new X509Store(StoreName.Root, StoreLocation.LocalMachine);

store.Open(OpenFlags.ReadOnly);

var cert = store.Certificates.OfType()

.FirstOrDefault(x => x.Thumbprint == certificateThumbprint);

store.Close();

return cert;

}

您可以使用azure resource explorer导航订阅来获取证书的指纹https://resources.azure.com/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值