获取 FQDN 参数字符串并将其分块以在变量中使用(Azure ARM 模板)

Taking a FQDN parameter string and chunking it up to use in a variable (Azure ARM Template)

我正在创建一个 Azure ARM 模板,用于将虚拟机部署到现有的 Active Directory 中。我正在使用 jsonaddomainextension 来执行部署的 AD 连接部分,我想为计算机对象指定一个特定的 OU 路径。 jsonaddomainextension 有一个用于执行此操作的参数,但它需要一个完整构造的 OU 路径。由于此模板是由不了解 AD 的用户部署的,因此要求他们输入正确的 OU 路径可能会以泪水告终(我的可能)。

用户确实需要输入的参数之一是域的 FQDN。

       "Domain Name": {
        "defaultValue": "DOMAIN.CO.UK",
        "type": "string",
        "metadata": {
            "description": "Enter domain name"
        }

我想做的是获取此字符串并使用它构建一个变量,我可以将其传递给 OU 格式的 jsonaddomainextension "OU=Servers,DC=DOMAIN,DC=CO,DC=UK"。 (服务器容器总是同名)。这就是我 unstuck/run 缺乏技能并需要一些帮助的地方。

首先是可能的吗?任何关于我将如何做到这一点的 hints/tips 都将不胜感激。

你可以为此使用字符串操作函数,像这样:

"modifiedstring": "[replace(parameters('domainname'), '.', ',DC=)]"
"oupath": "[concat('OU=Servers,DC=', variables('modifiedstring'))]"

这将导致用 ,DC= 替换所有点并将结果与​​ OU=Servers,DC= 前缀连接。然后您可以将结果用作:

"property": "[variables('oupath')]"

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