Azure ARM模板-具有创建空/默认机密的密钥保管库

时间:2019-12-17 14:50:43

标签: azure azure-keyvault arm-template

我正在部署带有密钥列表的Azure Key Vault。为此,我使用了quickstart-template

这似乎工作正常,但存在一些问题:

  1. 在每次部署中,秘密值(在parameters.json中提供)都会被覆盖
  2. 我只想创建一个秘密,因此管理员用户可以为其提供值。但是从“属性”部分删除“值”会导致错误BadRequest / An invalid value was provided for 'value'.

第二个问题已在github上注册,但是没有人找到解决此问题的方法吗?

2 个答案:

答案 0 :(得分:0)

我建议您查看API文档,而不要查看模板参考(因为它是垃圾)。 Here表示该值是必需的。

所以这是预期的。这不是错误。

话虽如此,这意味着您需要其他方法来管理Azure Key Vault中的机密

答案 1 :(得分:0)

如果您希望管理员稍后提供密码,建议您为管理员附加Access Policy to the KeyVault via ARM并在密码中输入一个虚拟值,以便他们可以在门户中进行更新。

另外,如果您不太喜欢虚拟值,或者不希望自动化创建/插入过程,我建议您使用PowerShell to create and insert the secret to your Key Vault

对于通过ARM设置机密,它可能类似于:

 {
      "type": "Microsoft.KeyVault/vaults/secrets",
      "name": "[concat(variables('keyVaultName'),'/',variables('secretName'))]",
      "apiVersion": "2018-02-14",
      "properties": {
        "contentType": "text/plain",
        "value": "[parameters('secretValue')]"
      },
      "dependsOn": [
        "[resourceId('Microsoft.KeyVault/vaults',  variables('keyVaultName'))]"
      ]
    },