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

是否可在创建被豁免资源的同时创建Azure Policy豁免?

是否可同时创建不合规Azure资源及其策略豁免?

可以,你完全可以在单次操作中创建不合规资源及其对应的Azure Policy分配豁免,无需执行禁用策略强制、创建资源、添加豁免、重新启用强制这一系列步骤。该功能目前已正式可用(不在预览或私有预览阶段)。

实现方式

最便捷的方式是使用基础设施即代码(IaC)工具如Bicep或ARM模板,或者将Azure CLI/PowerShell命令组合成单个脚本。以下是实用示例:

Bicep(推荐)

此示例部署一个启用了公共访问的存储账户(违反常见策略),并立即为其创建豁免:

// 部署不合规存储账户
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-01-01' = {
  name: 'noncompliantstoragedemo'
  location: resourceGroup().location
  sku: { name: 'Standard_LRS' }
  kind: 'StorageV2'
  properties: {
    allowBlobPublicAccess: true // 违反禁止公共Blob访问的策略
  }
}

// 为存储账户创建策略豁免
resource policyExemption 'Microsoft.Authorization/policyExemptions@2022-07-01' = {
  name: 'storage-account-waiver'
  scope: storageAccount
  properties: {
    policyAssignmentId: '/subscriptions/{你的订阅ID}/providers/Microsoft.Authorization/policyAssignments/{策略分配名称}'
    exemptionCategory: 'Waiver' // 若已实施风险控制措施,可使用'Mitigated'
    description: '为遗留存储账户需求批准的豁免'
  }
}

Azure CLI脚本

将以下命令保存为.sh文件或依次执行,即可完成相同操作:

# 创建不合规存储账户
az storage account create --name noncompliantstoragedemo --resource-group 你的资源组名称 --location eastus --sku Standard_LRS --allow-blob-public-access true

# 添加豁免以绕过策略阻止
az policy exemption create --name storage-account-waiver \
  --scope "/subscriptions/{你的订阅ID}/resourceGroups/你的资源组名称/providers/Microsoft.Storage/storageAccounts/noncompliantstoragedemo" \
  --policy-assignment "/subscriptions/{你的订阅ID}/providers/Microsoft.Authorization/policyAssignments/{策略分配名称}" \
  --exemption-category Waiver \
  --description "已批准的遗留存储豁免"

关键注意事项

  • 权限要求: 你需要拥有Microsoft.Authorization/policyExemptions/write权限,以及创建目标资源的权限。
  • 豁免类别: 对于故意不合规的资源使用Waiver,若已实施替代控制措施降低风险则使用Mitigated。
  • 无强制停机: 此方法保持策略对所有其他资源的强制生效,你无需在任何时候禁用策略分配的强制设置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 16:15:41