如何在Azure ARM模板中获取目录租户名称?

时间:2018-03-12 07:19:29

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

我需要在我的ARM模板中使用租户(目录租户)名称(特别是在创建Web应用程序时) enter image description here 可以使用subscription().displayName获取订阅名称,但是,如何获取我的关联目录租户名称? [subscription().tenantId.displayName][subscription().tenantId.Name]等表达式无效,我也无法在网络上找到此属性。
我不会硬编码的方式是它可以很容易地被订阅所有者或帐户管理员更改,这就是为什么我正在寻找一些现有的变量\参数\ etc

2 个答案:

答案 0 :(得分:2)

tenantId现在可用于模板功能。使用订阅功能:subscription()。

尝试以下输出示例以供参考:

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "resources": [],
    "outputs": {
        "subscriptionOutput": {
            "value": "[subscription()]",
            "type" : "object"
        }
    }
}

有关租户ID:

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "resources": [],
    "outputs": {
        "subscriptionOutput": {
            "value": "[subscription().tenantId]",
            "type" : "object"
        }
    }
}

参考:

https://docs.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-resource#subscription

答案 1 :(得分:1)

没有办法做到这一点。你只能得到这些价值:

{
    "id": "/subscriptions/{subscription-id}",
    "subscriptionId": "{subscription-id}",
    "tenantId": "{tenant-id}",
    "displayName": "{name-of-subscription}"
}

参考:https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-template-functions-resource#subscription