我的经典云服务中有一些.cer
证书(只有公钥)。我不太明白我应该如何将这些迁移到扩展支持中。
.pfx
证书,我可以在使用命令az keyvault certificate import
执行New-AzCloudService
之前预上传到密钥库。该命令不适用于.cer
(它需要证书中的私钥)。
如果我不上传证书,New-AzCloudService
失败是可以理解的,因为它找不到.cscfg
中提到的证书。
.CER文件是不包含机密的公钥,因此通常不需要受保护的KeyVault存储。这是经典产品和现代产品之间不幸的兼容性断裂(尽管我认为现代方法更明智。:))。
我也没有看到任何针对这种情况的自动处理或文档化的解决方案,因此不幸的是,迁移似乎需要一些手动解决方案(
在您的情况下,我会考虑对当前的云服务进行以下修改:
- 根据您对密钥更改的要求,将公钥文件作为资源文件嵌入包中,这些文件将自动复制到vm,或者在某些存储帐户中提供
- 创建StartupTask以在服务启动时将公钥安装在适当的位置
StartupTasks在CSDEF中定义,并且在迁移前后使用相同的CSPKG文件,因此这些修改应该透明地迁移。