【问题标题】:Can one develop non-nested azure arm firewallrules?可以开发非嵌套的 azure arm 防火墙规则吗?
【发布时间】:2018-07-27 21:34:33
【问题描述】:

这是为了确定我正在尝试的事情是否可能......

我见过几个开发条目 ARM 模板 (azuredeploy.json) 的示例,该模板引用/导入外部子资源模板(例如:azuredeploy.sql.server.json),其中定义了新的 SQL Server 以及 -- 在sql server 的 resources 部分 -- 嵌套资源,例如防火墙规则。

我见过一个示例 (https://blogs.msdn.microsoft.com/azuresqldbsupport/2017/01/11/arm-template-to-deploy-server-with-auditing-and-threat-detection-turned-on/),其中条目/父 ARM 模板(例如:azuredeploy.json)定义了 SQL Server,而不是将防火墙规则定义为嵌套资源,而是在并行,使用dependsOn定义执行顺序。

这似乎比第一种方法更易于维护/嵌套更少。

但我想更进一步,上面的资源都是在外部模板中定义的:azuredeploy.json invoking azuredeploy.sql.server.json azuredeploy.sql.server.firewallRules.json

很遗憾,我没有找到上述方法的一个示例。

我已经尝试了整个下午的大部分时间——但是将斜杠的 id 和名称更改为每个可以想象的配置,一遍又一遍地运行到:

代码=无效模板 消息=部署模板验证失败:'模板资源 {resource-name}' {resource-type} 类型的段长度不正确。

所以问题是: a) 有什么理由不应该这样做? (我觉得它允许一组更模块化的 arm 模板,可以从一个平面条目 arm 文件中引用,只需要定义一组正确的“dependsOn”属性) b)上面真的可以做到吗?! c)是否有在线示例来研究上述方法并了解我的方法错误? d) 以防万一:当它给出关于段长度的错误消息时......它可能会让自己感到困惑,并且它正在考虑“Microsoft.Resources/deployments”,而它应该只考虑“Microsoft.Resources/deployments”。 Sql/servers”和“Microsoft.Sql/servers/firewallRules”?

如果有人能在这个关键点上推动我,我们将不胜感激。

【问题讨论】:

    标签: azure azure-resource-manager


    【解决方案1】:

    是的,您应该可以这样做,请参阅:https://docs.microsoft.com/en-us/azure/templates/microsoft.sql/servers/firewallrules

    您发布的错误表明您缺少名称段或类型段 - 它们必须与下面的示例相匹配。

            "type": "Microsoft.Sql/servers/firewallrules",
            "apiVersion": "2015-05-01-preview",
            "name": "[concat(parameters('serverName'), '/', 'AllowAllWindowsAzureIps')]",
            "location": "[resourceGroup().location]",
            "properties": {
                "endIpAddress": "0.0.0.0",
                "startIpAddress": "0.0.0.0"
            }
    

    所以你的 name 属性会是这样的

    sqlServerResourceName/whateverYouWantToNameTheFirewallRules - 并完全按照上面的示例输入。

    【讨论】:

    • 谢谢。 >,这导致我更仔细地查看了我在两者之间的引用方式,最终我到达了那里。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多