导出 Azure Policy 资源

本文介绍了如何导出现有的 Azure Policy 资源。 导出资源很有用,建议将其用于备份,而这也是云治理和处理策略即代码过程中的一个重要步骤。 可以通过 REST API、Azure CLI 和 Azure PowerShell 导出 Azure Policy 资源。

使用 Azure CLI 导出

Azure Policy 定义、计划和分配都可以使用 Azure CLI 导出为 JSON。 上述每条命令都使用一个 name 参数来指定要为哪个对象获取 JSON。 name 属性通常是 GUID,而不是对象的 displayName。

下面是一个示例,说明如何使用名称 获取策略定义的 JSONf88a430f-115f-4d00-a92e-0badcd84d36e:

注意

可以使用以下 Azure CLI 命令检查所有策略定义的 Name 和 DisplayName 集合。 az policy definition list --query "[].{Name:name,DisplayName:displayName}" -o table

以下内容中有一个演示。

名称 显示名称
f88a430f-115f-4d00-a92e-0badcd84d36e AKS-Monitoring-Addon
az policy definition show --name 'f88a430f-115f-4d00-a92e-0badcd84d36e'

使用 Azure PowerShell 导出

Azure Policy 定义、计划和分配都可以使用 Azure PowerShell 导出为 JSON。 上述每个 cmdlet 都使用一个 Name 参数来指定要为哪个对象获取 JSON。 Name 属性通常是一个 GUID(全局唯一标识符),而不是对象的 。displayName

以下示例演示如何获取名称(如前所述,是一个 GUID)为 的策略定义的 JSONf88a430f-115f-4d00-a92e-0badcd84d36e:

注意

可以使用以下 Azure PowerShell cmdlet 检查所有策略定义的 Name 和 DisplayName 集合。 Get-AzPolicyDefinition | Select {$_.Name,$_.Properties.DisplayName}

以下内容中有一个演示。

名称 显示名称
f88a430f-115f-4d00-a92e-0badcd84d36e AKS-Monitoring-Addon
Get-AzPolicyDefinition -Name 'f88a430f-115f-4d00-a92e-0badcd84d36e' | ConvertTo-Json -Depth 10

在 Azure 门户中使用 Resource Graph 导出到 CSV

使用 Azure Resource Graph,可以通过复杂的筛选、分组和排序进行大规模查询。 Azure Resource Graph 支持策略资源表,其中包含策略资源,例如定义、分配和豁免。 请查看我们的示例查询。 Resource Graph 资源管理器门户体验允许使用下载到 CSV工具栏选项将查询结果下载到 CSV。

后续步骤