我用参数创建了一个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模板中创建此用户定义的函数。
答案 0 :(得分:1)
您不能在UDF中使用reference()函数(或任何运行时函数)。