Grunderna i Azure Policy-definitioner påverkar

Varje principdefinition i Azure Policy har en enda effect i sin policyRule. Det effect avgör vad som händer när principregeln utvärderas så att den matchar. Effekterna fungerar annorlunda om de gäller för en ny resurs, en uppdaterad resurs eller en befintlig resurs.

Följande är de Azure Policy-definitionseffekter som stöds:

Interchanging-effekter

Ibland kan flera effekter vara giltiga för en viss principdefinition. Parametrar används ofta för att ange tillåtna effektvärden (allowedValues) så att en enskild definition kan vara mer mångsidig under tilldelningen. Det är dock viktigt att observera att inte alla effekter är utbytbara. Resursegenskaper och logik i principregeln kan avgöra om en viss effekt anses giltig för principdefinitionen. Till exempel kräver principdefinitioner med verkan auditIfNotExists annan information i principregeln som inte krävs för principer med verkan audit. Effekterna beter sig också annorlunda. audit principer utvärderar en resurs efterlevnad baserat på dess egna egenskaper, medan auditIfNotExists principer utvärderar en resurs efterlevnad baserat på en underordnad resurss egenskaper eller tilläggsresursens egenskaper.

Följande lista är några allmänna riktlinjer för utbytbara effekter:

  • audit, deny, och antingen modify eller append är ofta utbytbara.
  • auditIfNotExists och deployIfNotExists är ofta utbytbara.
  • manual är inte utbytbar.
  • disabled är utbytbar med någon effekt.

Utvärderingsordning

Azure Policys första utvärdering är för begäranden om att skapa eller uppdatera en resurs. Azure Policy skapar en lista över alla tilldelningar för resursen och utvärderar sedan resursen mot varje definition. I ett Resource Manager-läge bearbetar Azure Policy flera av effekterna innan du skickar begäran till lämplig resursprovider. Den här ordningen förhindrar onödig bearbetning av en resursprovider när en resurs inte uppfyller de utformade styrningskontrollerna i Azure Policy. Med ett resursproviderläge hanterar resursprovidern utvärderingen och resultatet och rapporterar resultatet tillbaka till Azure Policy.

  • disabled kontrolleras först för att avgöra om principregeln ska utvärderas.
  • append och modify utvärderas sedan. Eftersom någon av dem kan ändra begäran kan en ändring som görs förhindra att en gransknings- eller neka-effekt utlöses. Dessa effekter är endast tillgängliga i ett Resource Manager-läge.
  • deny utvärderas sedan. Genom att utvärdera Neka före granskning förhindras dubbel loggning av en oönskad resurs.
  • audit utvärderas.
  • manual utvärderas.
  • auditIfNotExists utvärderas.
  • denyAction utvärderas senast.

När resursprovidern returnerar en lyckad kod på en Begäran om auditIfNotExists Resource Manager-läge och deployIfNotExists utvärderar för att avgöra om mer efterlevnadsloggning eller åtgärd krävs.

PATCH begäranden som endast ändrar tags relaterade fält begränsar principutvärderingen till principer som innehåller villkor som inspekterar tags relaterade fält.

Principdefinitioner för skiktning

Flera tilldelningar kan påverka en resurs. Dessa tilldelningar kan ha samma omfång eller i olika omfång. Var och en av dessa tilldelningar kommer sannolikt också att ha en annan effekt definierad. Villkoret och effekten för varje princip utvärderas oberoende. Till exempel:

  • Princip 1
    • Begränsar resursplatsen till westus
    • Tilldelad till prenumeration A
    • Neka-effekt
  • Princip 2
    • Begränsar resursplatsen till eastus
    • Tilldelad till resursgrupp B i prenumeration A
    • Granskningseffekt

Den här konfigurationen skulle resultera i följande resultat:

  • Alla resurser som redan finns i resursgrupp B i eastus är kompatibla med princip 2 och är inte kompatibla med princip 1
  • Alla resurser som redan finns i resursgruppen B som inte är i eastus är inkompatibla med princip 2 och inkompatibla till princip 1 om de inte finns i westus
  • Princip 1 nekar alla nya resurser i prenumeration A inte i westus
  • Alla nya resurser i prenumeration A och resursgrupp B i westus skapas och är inte kompatibla med princip 2

Om både princip 1 och princip 2 hade verkan av neka, ändras situationen till:

  • Alla resurser som redan finns i resursgruppen B som inte är i eastus är icke-kompatibla med princip 2
  • Alla resurser som redan finns i resursgrupp B som inte är i westus är inkompatibla med princip 1
  • Princip 1 nekar alla nya resurser i prenumeration A inte i westus
  • Alla nya resurser i resursgrupp B i prenumeration A nekas

Varje tilldelning utvärderas individuellt. Därför finns det ingen möjlighet för en resurs att glida igenom en lucka från skillnader i omfång. Nettoresultatet av skiktningsprincipdefinitioner anses vara kumulativt mest restriktivt. Om både princip 1 och 2 till exempel hade en deny effekt skulle en resurs blockeras av de överlappande och motstridiga principdefinitionerna. Om du fortfarande behöver resursen som ska skapas i målomfånget granskar du undantagen för varje tilldelning för att verifiera att rätt principtilldelningar påverkar rätt omfång.

Nästa steg