Compartir a través de


Efecto de agregado de definiciones de Azure Policy

El efecto append se usa para agregar más campos al recurso solicitado durante la creación o actualización. Un ejemplo habitual es la especificación de direcciones IP permitidas para un recurso de almacenamiento.

Importante

append está diseñado para su uso con propiedades que no son de etiqueta. Aunque append puede agregar etiquetas a un recurso durante una solicitud de creación o actualización, se recomienda usar el modificar efecto para las etiquetas en su lugar.

Evaluación de append

El efecto append se evalúa antes de que un proveedor de recursos procese la solicitud durante la creación o actualización de un recurso. Append agrega campos al recurso cuando se cumple la condición if de la regla de directiva. Si el append effect reemplaza un valor en la solicitud original con otro valor diferente, entonces actúa como un deny effect y rechaza la solicitud. Para anexar un nuevo valor a una matriz existente, use la versión [*] del alias.

Cuando una definición de directiva que utiliza el efecto append se ejecuta como parte de un ciclo de evaluación, no realiza cambios en los recursos que ya existen. En su lugar, marca cualquier recurso que cumpla la condición de if como no compatible.

Propiedades de append

Un efecto append solo tiene una matriz details, que es necesaria. Dado que details es una matriz, puede tomar un solo par field/value o varios. Consulte estructura de definición para obtener la lista de campos aceptables.

Agregar ejemplos

Ejemplo 1: field/valuepar único con un no [*]alias con una matriz value para establecer reglas IP en una cuenta de almacenamiento. Cuando el alias no[*] es una matriz, el efecto anexa el value como toda la matriz. Si la matriz ya existe, se produce un evento deny desde el conflicto.

"then": {
  "effect": "append",
  "details": [
    {
      "field": "Microsoft.Storage/storageAccounts/networkAcls.ipRules",
      "value": [
        {
          "action": "Allow",
          "value": "134.5.0.0/21"
        }
      ]
    }
  ]
}

Ejemplo 2: field/valuepar único con un [*]alias con una matriz value para establecer reglas IP en una cuenta de almacenamiento. Cuando se usa el alias de [*], el efecto anexa el value a una matriz potencialmente preexistente. Se crean matrices que no existen.

"then": {
  "effect": "append",
  "details": [
    {
      "field": "Microsoft.Storage/storageAccounts/networkAcls.ipRules[*]",
      "value": {
        "value": "40.40.40.40",
        "action": "Allow"
      }
    }
  ]
}

Pasos siguientes