如何在链接模板中使用Azure Key Vault密钥

时间:2018-02-28 23:31:53

标签: azure azure-resource-manager azure-automation

我试图从KeyVault秘密创建自动化变量。我假设我可以做同样的事情,目前在主模板中用于检索Windows密码,但它失败,下面没有描述性错误。不确定在排除故障后应该做什么。

错误

{
  "code": "BadRequest",
  "message": "{\"Message\":\"The request is invalid.\",\"ModelState\":{\"variable.properties.value\":[\"An error has occurred.\"]}}"
}

模板

{
                  "name": "mystring",
                  "type": "variables",
                  "apiVersion": "2015-10-31",
                  "dependsOn": [
                    "[concat('Microsoft.Automation/automationAccounts/', parameters('AutomationAccountName'))]"
                  ],
                  "properties": {
                    "value": {
                      "reference": {
                        "keyVault": {
                          "id": "[resourceId(subscription().subscriptionId, 'Utility-RG', 'Microsoft.KeyVault/vaults', 'MyKeyVault')]"
                        },
                        "secretName": "WindowsPasswordSecret"
                      }
                    },
                    "description": "test var",
                    "isEncrypted": false
                  }
                }

1 个答案:

答案 0 :(得分:2)

这个错误确实有用,虽然我不知道那里出了什么问题,我可以告诉你如何解决这个问题,你需要将数据从KV传递给模板(作为输入参数)而不是资源。并在模板中使用参数为相关对象赋值。

参考:https://github.com/4c74356b41/bbbb-is-the-word/blob/master/_arm/parent.json#L151