You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure云服务迁移至扩展支持时.cer公钥证书迁移问题咨询

Azure经典云服务仅公钥.cer证书迁移至云服务扩展支持版本操作方案

云服务扩展支持版本要求所有.cscfg配置文件中声明的证书必须预先存放在关联的Key Vault中,仅含公钥的.cer证书不满足az keyvault certificate import命令的私钥校验要求,按以下步骤操作即可完成迁移,避免部署时报证书找不到的错误:

  • 第一步先校验本地.cer证书的指纹值,确认和.cscfg中声明的对应证书指纹完全一致,避免后续匹配失败。
  • 上传.cer公钥证书到Key Vault时,走机密存储通道而非证书导入通道,执行如下az cli命令:
    az keyvault secret set --vault-name <你的Key Vault实例名称> --name <自定义证书存储名,建议直接使用证书指纹命名方便匹配> --value <.cer文件的无格式头Base64编码值> --content-type application/x-pkcs12
    
    不同环境生成Base64编码值的方式:
    • Windows环境:直接用certutil -encode <本地.cer文件全路径> stdout | findstr /v /c:"-----"生成
    • Linux/macOS环境:直接用base64 -w 0 <本地.cer文件全路径>生成
  • 为云服务扩展支持配置的托管标识(系统分配/用户分配均可),授予目标Key Vault的机密读取权限,不要仅授予证书读取权限——公钥.cer存储在Key Vault的机密节点下,仅开通证书读取权限会导致部署时拉取证书失败。
  • 编写New-AzCloudService的证书配置参数时,.cer证书的引用地址填写刚才上传生成的机密标识符即可,和.pfx证书的引用逻辑完全一致,不需要为公钥证书编写特殊配置。

避坑提示:不要为了适配az keyvault certificate import命令给.cer证书强行生成空私钥转成PFX格式上传,会导致部署后服务读取公钥时出现签名校验失败、信任链断裂等异常。

正式执行部署命令前,可以先运行az keyvault secret show --vault-name <Key Vault实例名> --name <上传时设置的证书存储名>回查存储内容对应的证书指纹,确认和.cscfg中声明的值完全匹配后再执行部署,就不会触发证书找不到的报错。

内容的提问来源于stack exchange,提问作者Konstantin Surkov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 17:09:18