你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

更新 Azure 登陆区域自定义策略

随着时间的推移,Azure 登陆区域自定义策略和策略计划会更新到可以合并到 Azure 环境中的较新版本。 本文介绍如何在新版本发布时更新 Azure 登陆区域自定义策略和策略计划。

本文介绍高级手动更新步骤,并提供有关处理 TerraformBicep 模块化实现的更新的参考。 若要使用 Bicep 将 Azure 登陆区域自定义策略迁移到 Azure 内置策略,请参阅 将 Azure 登陆区域策略迁移到 Azure 内置策略

以下图表提供了 Azure 登陆区域自定义策略更新的决策树流程:该图示显示了 Azure 登陆区域自定义策略更新过程的决策树。

谨慎

删除现有策略分配时,环境在重新分配策略所需的时间内不受保护。 分配更新的策略后,请查看策略合规性部分,查找任何异常的资源,并完成修复。

Azure 登陆区域环境的更新步骤

本部分介绍将 Azure 登陆区域自定义策略和计划更新为较新版本的一般高级步骤。

检测更新

使用以下权威选项来确定一个或多个 Azure 登陆区域自定义策略已过时:

应用更新

若要确定是否将更新的自定义策略应用到 Azure 登陆区域部署:

  1. 确定你的 Azure 资源当前是否在任何范围内应用了过时的自定义策略。 如果使用 Azure 治理可视化工具,可以通过查看 TenantSummary 来查看当前分配的策略。
  2. 确定任何过时的自定义策略是否属于 Azure 登陆区域自定义策略计划。
  3. 确定 Azure 资产当前是否在任何范围内分配任何过时的自定义策略计划。

根据上述调查结果,执行以下操作:

未被分配的策略

  • 如果过时的策略没有分配到您的 Azure 环境中,并且也不是现有自定义策略计划的一部分,那么请在 Azure 针对着陆区域的中间根管理组中,将过时的策略定义替换为更新后的策略定义,例如 Contoso

  • 如果自定义策略计划已更新,但未在 Azure 资产中分配,请将过时的自定义策略计划替换为 Azure 登陆区域中间根管理组中更新的自定义策略计划,例如 Contoso

具有未更改参数的策略,而不是自定义策略计划的一部分

如果将过时的 Azure 登陆区域策略分配到 Azure 资产的任何范围,并且它不属于现有的 Azure 登陆区域自定义策略计划的一部分,且参数名称和数量没有改变:

  • 将现有自定义策略定义内容替换为 Azure 登陆区域中间根管理组中更新的自定义策略定义内容,例如 Contoso。 有关详细指导,请参阅 Azure 登陆区域用户指南

具有已更改参数的策略,且不属于自定义策略方案的一部分

如果将过时的 Azure 登陆区域策略分配到 Azure 资产的任何范围,并且它不属于现有的 Azure 登陆区域自定义策略计划的一部分,且参数名称和数量没有改变:

  1. 捕获所有过时策略分配、其分配的位置及其参数值。
  2. 执行以下操作之一:
    • 如果策略分配包含多个策略定义,则通过在分配的所有范围内删除过时的策略来更新策略分配。
    • 如果策略分配仅包含过时的策略,请在分配的所有范围内删除现有策略分配。
  3. 从 Azure 登陆区域中间根管理组中删除过时的策略,例如 Contoso
  4. 将更新的策略导入 Azure 登陆区域中间根管理组。
  5. 通过在预先记录的作用域中包含更新的策略来更新现有策略分配或创建新的策略分配。
  6. 重新分配更新的自定义策略后,请查看策略符合性部分,以验证资源是否处于正常状态。

有关详细指导,请参阅 Azure 登陆区域用户指南

通过自定义策略计划分配的带未更改的参数的策略

如果过时的 Azure 登陆区域策略是现有 Azure 登陆区域自定义策略计划的一部分、被分配到 Azure 资产中的任何范围且参数名称和数量未改变:

  • 将现有自定义策略定义内容替换为更新的自定义策略定义内容。 无需对自定义策略计划或分配进行进一步更改,因为参数编号和名称保持不变。 有关详细指导,请参阅 Azure 登陆区域用户指南

通过自定义策略计划分配的带更改的参数的策略

如果过时的策略是现有自定义策略计划的一部分、被分配到 Azure 资产中的任何范围且参数名称和数量已改变:

  1. 捕获所有策略分配、其分配的位置以及其自定义政策计划的参数值。

  2. 删除所有获得分配的范围中的现有策略分配。

  3. 从自定义策略计划中删除过时的策略。

    无法从自定义策略举措中删除 举措参数。 请考虑重用这些参数。

  4. 从 Azure 登陆区域中间根管理组中删除过时的策略,例如 Contoso

  5. 将更新的策略导入 Azure 登陆区域中间根管理组。

  6. 将更新的策略添加到自定义策略计划。

    • 如果适用,请重复使用以前的计划参数。
    • 如果适用,请遵循自定义策略计划定义的现有命名模式来添加其他计划参数。
  7. 重新分配更新的自定义策略计划。

  8. 重新分配更新的自定义策略计划后,请查看策略符合性部分,以验证资源是否处于正常状态。

有关详细指导,请参阅 Azure 登陆区域用户指南

更新的分配的自定义策略计划

如果 Azure 登陆区域自定义策略计划已完全更新,并分配到 Azure 资产的任何范围中:

  1. 捕获所有策略分配、其分配的位置以及其 Azure 登陆区域自定义政策计划的参数值。

  2. 删除所有获得分配的范围中的现有策略分配。

  3. 从中间根管理组中删除过时的自定义策略计划,例如 Contoso。 删除之前,请记录所有自定义策略定义名称和 ID,假设所有自定义策略定义都 up-to-date。

  4. 使用相应的策略引用导入更新的自定义策略计划定义。

    可以在 policySetDefinitions 处获取更新的计划,其自定义策略的范围为通用 contoso 范围。 请记得将 contoso 范围更改为每个策略定义 ID 的管理组层次结构伪根名称。

  5. 重新分配更新的自定义策略计划。

  6. 重新分配更新的自定义策略计划后,请查看策略符合性部分,以验证资源是否处于正常状态。

有关详细指导,请参阅 Azure 登陆区域用户指南

平台登陆区域的 Terraform Azure 验证模块的更新步骤

如果您使用 Terraform 模块,请参阅 更新指南

Bicep 模块部署的更新步骤

如果使用 ALZ-Bicep 模块 来管理 Azure 登陆区域部署,本部分提供用于更新 Azure 登陆区域自定义策略和计划的资源。

使用 Bicep 检测更新

使用 检测更新 中的方法来确定策略是否已更改。 还可以在 ALZ-Bicep 版本中查看对 ALZ-Bicep 策略的更改。

使用 Bicep 进行更新

ALZ-Bicep 提供了将 Azure 登陆区域自定义策略更新为较新的策略的通用指南。 有关详细信息,请参阅 如何将 Azure 登陆区域自定义策略迁移到 Azure 内置策略

后续步骤

无论是使用 Azure 门户、Bicep 还是 Terraform 来管理 Azure 登陆区域基础结构,都需要随时间推移管理策略更改。 使用本文中的流程作为起点,在您的 Azure 登陆区域实施中制定策略管理相关流程。