Azure 原則定義附加效果
append
效果可用來在建立或更新所要求的資源時,為資源新增更多欄位。 常見的範例是為儲存體資源指定允許的 IP。
重要
append
適用於非標記屬性。 雖然 append
可以在建立或更新要求期間,將標記新增至資源,但建議您對標記改用修改效果。
Append 評估
在建立或更新資源期間,會先由 append
進行評估,然後才由「資源提供者」處理要求。 Append 會在原則規則的 if
條件相符時,為資源新增欄位。 如果 Append 效果會以不同的值覆寫原始要求中的值,則它會充當 Deny 效果而拒絕該要求。 若要將新值附加至現有陣列中,請使用 [*]
版本的別名。
當使用 Append 效果的原則定義在評估週期中執行時,並不會對已經存在的資源進行變更。 取而代之的是,會將符合 if
條件的所有資源標示為不符合規範。
Append 屬性
Append 效果只有一個 details
陣列且為必要。 由於 details
是陣列,因此其可以接受單一的 field/value
配對,也可以接受多個配對。 如需了解可接受的欄位清單,請參考定義結構。
Append 範例
範例 1:此單一 field/value
配對使用非 [*]
別名搭配 value
陣列,以設定儲存體帳戶相關 IP 規則。 當非 [*]
別名是陣列時,效果會將 value
當做整個陣列來附加。 如果陣列已經存在,就會因為衝突而發生 deny
事件。
"then": {
"effect": "append",
"details": [
{
"field": "Microsoft.Storage/storageAccounts/networkAcls.ipRules",
"value": [
{
"action": "Allow",
"value": "134.5.0.0/21"
}
]
}
]
}
範例 2:此單一 field/value
配對使用 [*]
別名搭配 value
陣列,以設定儲存體帳戶相關 IP 規則。 使用 [*]
別名時,效果會將 value
附加至可能預先存在的陣列。 建立了不存在的陣列。
"then": {
"effect": "append",
"details": [
{
"field": "Microsoft.Storage/storageAccounts/networkAcls.ipRules[*]",
"value": {
"value": "40.40.40.40",
"action": "Allow"
}
}
]
}
下一步
- 在 Azure 原則範例檢閱範例。
- 檢閱 Azure 原則定義結構。
- 了解如何以程式設計方式建立原則。
- 了解如何取得合規性資料。
- 了解如何補救不符合規範的資源。
- 檢閱 Azure 管理群組。