Azure Policy 定义 append 效果
append
效果用于在创建或更新期间向请求的资源添加更多字段。 常见的示例是为存储资源指定允许的 Ip。
重要
append
用于非标记的属性。 尽管 append
可以在创建或更新请求期间将标记添加到资源,但建议使用 modify 效果取代标记。
“附加”评估
在创建或更新资源期间,append
效果会在资源提供程序处理请求之前进行评估。 当满足策略规则的 if
条件时,append 会向资源添加字段。 如果“附加”效果使用其他值替代原始请求中的值,则它会充当拒绝效果并拒绝该请求。 若要将新值附加到现有数组,请使用 [*]
版本的别名。
当使用附加效果的策略定义作为评估周期的一部分运行时,它不会更改已存在的资源。 相反,它会将符合 if
条件的任意资源标记为不符合。
“附加”属性
append 效果只有 details
数组,它是必需的。 因为 details
是一个数组,它可能需要单个或多个 field/value
对。 请参阅定义结构,获取可接受的字段列表。
“附加”示例
示例 1:使用非 [*]
别名的单个 field/value
对,具有用于在存储帐户上设置 IP 规则的 value
数组。 在非 [*]
别名是数组时,效果会将 value
追加为整个数组。 如果数组已存在,该冲突会导致 deny
事件发生。
"then": {
"effect": "append",
"details": [
{
"field": "Microsoft.Storage/storageAccounts/networkAcls.ipRules",
"value": [
{
"action": "Allow",
"value": "134.5.0.0/21"
}
]
}
]
}
示例 2:使用 [*]
别名的单个 field/value
对,具有用于在存储帐户上设置 IP 规则的 value
数组。 如果使用 [*]
别名,效果会将 value
追加到某个可能预先存在的数组。 如果不存在数组,则会创建数组。
"then": {
"effect": "append",
"details": [
{
"field": "Microsoft.Storage/storageAccounts/networkAcls.ipRules[*]",
"value": {
"value": "40.40.40.40",
"action": "Allow"
}
}
]
}
后续步骤
- 在 Azure Policy 示例中查看示例。
- 查看 Azure Policy 定义结构。
- 了解如何以编程方式创建策略。
- 了解如何获取符合性数据。
- 了解如何修正不符合的资源。
- 请查看 Azure 管理组。