You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过CLI/查询/PowerShell查看Azure Policy近期变更?

查看Azure Policy近期变更的方法

使用Azure CLI

通过活动日志查询策略相关的创建/更新操作,执行以下命令:

az monitor activity-log list --resource-provider "Microsoft.Authorization" --operation-name "Microsoft.Authorization/policyAssignments/write" "Microsoft.Authorization/policyDefinitions/write" "Microsoft.Authorization/policySetDefinitions/write" --start-time [YYYY-MM-DDTHH:MM:SSZ] --end-time [YYYY-MM-DDTHH:MM:SSZ]
  • 替换[YYYY-MM-DDTHH:MM:SSZ]为目标时间范围,比如查询过去24小时可使用--start-time $(date -d '24 hours ago' --utc +%Y-%m-%dT%H:%M:%SZ)
  • 返回结果包含变更时间、操作人、目标资源ID及变更详情,覆盖策略分配、自定义策略定义、策略集定义的变更

使用PowerShell

利用Get-AzActivityLog筛选策略相关操作记录:

Get-AzActivityLog -StartTime (Get-Date).AddDays(-1) -EndTime (Get-Date) | Where-Object {
    $_.ResourceProviderName.Value -eq "Microsoft.Authorization" -and
    ($_.OperationName.Value -in "Microsoft.Authorization/policyAssignments/write", "Microsoft.Authorization/policyDefinitions/write", "Microsoft.Authorization/policySetDefinitions/write")
} | Select-Object EventTimestamp, Caller, OperationName, ResourceId, Properties
  • 默认查询过去1天的记录,可通过调整AddDays(-1)修改时间范围
  • 结果会精简展示关键变更信息,便于快速核查

使用Azure Monitor日志查询

若订阅已配置Log Analytics工作区并收集活动日志,可运行以下Kusto查询:

AzureActivity
| where ResourceProviderValue == "Microsoft.Authorization"
| where OperationNameValue in ("Microsoft.Authorization/policyAssignments/write", "Microsoft.Authorization/policyDefinitions/write", "Microsoft.Authorization/policySetDefinitions/write")
| where TimeGenerated > ago(1d)
| project TimeGenerated, Caller, OperationNameValue, ResourceId, Properties
  • ago(1d)表示查询过去1天的数据,可改为ago(12h)等调整时间范围
  • 该查询支持批量筛选和聚合变更记录,适合大规模环境排查

内容的提问来源于stack exchange,提问作者Sunil Sharma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 16:20:57