带密钥库证书的ARM模板
问题描述:
我有一个奇怪的问题。我有1个ARM模板,我用它来部署2个环境。带密钥库证书的ARM模板
我加入的证书是这样的:
{
"type": "Microsoft.Web/certificates",
"name": "[variables('certificateName')]",
"apiVersion": "2016-03-01",
"location": "[resourceGroup().location]",
"properties": {
"keyVaultId": "[parameters('almKeyVaultId')]",
"keyVaultSecretName": "[parameters('servicePrincipalCertSecretName')]",
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms/', variables('appServicePlanName'))]"
},
"dependsOn": [
"[resourceId('Microsoft.Web/serverfarms/', variables('appServicePlanName'))]"
]
},
对于我的测试环境中,这成功。 当我部署我的QA环境时,出现错误:参数KeyVaultId & KeyVaultSecretName具有无效值。
但是,Test和QA的参数值是相同的(almKeyVaultId & servicePrincipalCertSecretName)。
任何想法我做错了什么?
更新
删除全面的质量检查资源组后,我就能够重新部署完全相同的ARM模板。 似乎应该在密钥保险库密钥之后创建资源组?任何想法为什么?如果我们在生产中遇到这种情况,我们不希望删除完整的资源组
答
我想我找到了这个问题的原因。 显然,在创建资源组时,您无法更改秘密名称。如果你这样做,上面的错误将被抛出。
如果要更改密钥名称,则需要删除资源组并重新部署所有内容。
谢谢你指出这一点。我发现你也可以改变证书的名字,这个名字的影响较小。 – Tom