我想将 Azure 的内置策略之一分配给使用 Terraform 的管理组。我面临的问题是,虽然通过将范围正确设置为订阅 ID 或资源组或要应用策略的特定资源,可以相当轻松地使用 Terraform 分配策略,但将其更改为管理组会导致一个错误。我认为,这是因为策略定义位置需要是管理组,所以我们可以使azurerm_policy_assignment的范围等于所需的管理组。我能否就此获得一些帮助,以便如何定义策略,定义位置是 Terraform 中管理组的位置?例如,我尝试在资源 azurerm_policy_definition块在策略分配块之前,但我在那里得到“范围”是一个意想不到的关键字。设置“位置”也不起作用。
我还将分享我当前的解决方法。
由于我面临的问题,我目前正在做的是从门户复制策略的定义,将“定义位置”更改为等于管理组 ID,然后传递新策略在我的后续 Terraform 代码中将定义 id 和范围作为管理组,现在该策略已在管理组的相关位置定义,现在可以使用。
但我想取消这种手动干预,并打算仅使用 Terraform 脚本来完成它。作为该领域的新手,有没有办法可以将策略分配给 Terraform 中的特定管理组,首先在同一范围内适当地定义它,以免导致任何错误?
或者,我的问题也可以解释为如何仅使用 Terraform 脚本将 Azure 策略分配给特定的管理组范围(可以假设,管理组也将使用 Terraform 创建,尽管该部分已处理)。