Azure资源管理器(ARM)模板参数未定义

时间:2019-07-11 10:34:27

标签: azure azure-resource-manager arm-template

我用参数创建了一个ARM模板用户定义函数。但是它得到一个错误“参数'testParam'未定义”。这是我用户定义的函数内容。

"functions": [
{
  "namespace": "testns",
  "members": {
    "keyVaultAccessPolicyFunc": {
      "parameters": [
        {
          "name": "testParam",
          "type": "string"
        }
      ],
      "output": {
        "type": "array",
        "value": [
          {
            "objectId": "[reference(concat('Microsoft.Web/Sites',parameters('testParam'))).identity.principalId]",
            "permissions": {
              "keys": [
                "all"
              ],
              "secrets": [
                "all"
              ]
            },
            "tenantId": "[reference(concat('Microsoft.Web/Sites',parameters('testParam'))).identity.tenantId]"
          }
        ]
      }
    }
  }
}
]

我参考了本文档https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-authoring-templates#functions来在ARM模板中创建此用户定义的函数。

1 个答案:

答案 0 :(得分:1)

您不能在UDF中使用reference()函数(或任何运行时函数)。