ARM模板-在参数部分下解释“引用:{}”属性 我可以将其用于例如:引用链接模板的输出变量吗?

问题描述

我看过这样的例子:

....
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#","contentVersion": "1.0.0.0","parameters": {
  "keyVaultSecretValue": {
    "reference": { <===========  Reference property
      "keyVault": {
        "id": "...."
      },"secretName": "...."
    }
  }
},....

我找不到有关此reference属性可能用法的任何文档。

我可以将其用于例如:引用链接模板的输出变量吗?

因此:

[reference('sqlServerLinkedTemplate').outputs.connectionString.value]

还是其他参考?

解决方法

在顶部的示例中,reference表示要将密钥添加到的密钥库。一个示例如下所示:

{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#","contentVersion": "1.0.0.0","parameters": {
    "adminLogin": {
        "value": "exampleadmin"
    },"adminPassword": {
        "reference": {
        "keyVault": {
        "id": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.KeyVault/vaults/<vault-name>"
        },"secretName": "ExamplePassword"
        }
    },"sqlServerName": {
        "value": "<your-server-name>"
    }
}
}

将模板链接在一起是通过将模板嵌套在一起或将它们链接在一起来完成的。 documentation对此有很多信息。

链接模板的示例如下所示:

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#","parameters": {},"variables": {},"resources": [
    {
        "type": "Microsoft.Resources/deployments","apiVersion": "2019-10-01","name": "linkedTemplate","properties": {
        "mode": "Incremental","templateLink": {
            "uri":"https://mystorageaccount.blob.core.windows.net/AzureTemplates/newStorageAccount.json","contentVersion":"1.0.0.0"
        }
        }
    }
    ],"outputs": {
    }
}

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...