Granskningseffekt för Azure Policy-definitioner
Effekten audit
används för att skapa en varningshändelse i aktivitetsloggen när du utvärderar en icke-kompatibel resurs, men den stoppar inte begäran.
Granskningsutvärdering
Granskning är den sista effekten som kontrolleras av Azure Policy när en resurs skapas eller uppdateras. I ett Resource Manager-läge skickar Azure Policy sedan resursen till resursprovidern. När du utvärderar en begäran om att skapa eller uppdatera en resurs lägger Azure Policy till en Microsoft.Authorization/policies/audit/action
åtgärd i aktivitetsloggen och markerar resursen som icke-kompatibel. Under en utvärderingscykel för standardefterlevnad uppdateras endast efterlevnadsstatusen för resursen.
Granskningsegenskaper
För ett Resource Manager-läge har granskningseffekten inga andra egenskaper för användning i villkoret then
för principdefinitionen.
För ett resursproviderläge av Microsoft.Kubernetes.Data
har granskningseffekten följande underegenskaper som details
. Användning av templateInfo
krävs för nya eller uppdaterade principdefinitioner som constraintTemplate
är inaktuella.
templateInfo
(krävs)- Det går inte att använda med
constraintTemplate
. sourceType
(krävs)Definierar typen av källa för villkorsmallen. Tillåtna värden:
PublicURL
ellerBase64Encoded
.Om
PublicURL
, parat med egenskapenurl
för att ange platsen för villkorsmallen. Platsen måste vara offentligt tillgänglig.Varning
Använd inte SAS-URI:er, URL-token eller något annat som kan exponera hemligheter i oformaterad text.
Om
Base64Encoded
, parat med egenskapencontent
för att tillhandahålla mallen för grundläggande 64-kodade villkor. Se Skapa principdefinition från villkorsmall för att skapa en anpassad definition från en befintlig Open Policy Agent (OPA) Gatekeeper v3-villkorsmall.
- Det går inte att använda med
constraint
(inaktuell)- Det går inte att använda med
templateInfo
. - CRD-implementeringen av villkorsmallen. Använder parametrar som skickas via
values
som{{ .Values.<valuename> }}
. I exempel 2 nedan är{{ .Values.excludedNamespaces }}
dessa värden och{{ .Values.allowedContainerImagesRegex }}
.
- Det går inte att använda med
constraintTemplate
(inaktuell)- Det går inte att använda med
templateInfo
. - Måste ersättas med
templateInfo
när du skapar eller uppdaterar en principdefinition. - Villkorsmallen CustomResourceDefinition (CRD) som definierar nya begränsningar. Mallen definierar Rego-logiken, villkorsschemat och de villkorsparametrar som skickas via
values
från Azure Policy. Mer information finns i Gatekeeper-begränsningar.
- Det går inte att använda med
constraintInfo
(valfritt)- Det går inte att använda med
constraint
,constraintTemplate
,apiGroups
,kinds
,scope
,namespaces
,excludedNamespaces
ellerlabelSelector
. - Om
constraintInfo
inte anges kan villkoret genereras fråntemplateInfo
och princip. sourceType
(krävs)Definierar typen av källa för villkoret. Tillåtna värden:
PublicURL
ellerBase64Encoded
.Om
PublicURL
, parat med egenskapenurl
för att ange platsen för villkoret. Platsen måste vara offentligt tillgänglig.Varning
Använd inte SAS-URI:er eller token i
url
eller något annat som kan exponera en hemlighet.
- Det går inte att använda med
namespaces
(valfritt)- En matris med Kubernetes-namnområden att begränsa principutvärderingen till.
- Ett tomt eller saknat värde gör att principutvärderingen inkluderar alla namnområden som inte definierats i excludedNamespaces.
excludedNamespaces
(valfritt)- En matris med Kubernetes-namnområden som ska undantas från principutvärderingen.
labelSelector
(valfritt)- Ett objekt som innehåller egenskaperna matchLabels (objekt) och matchExpression (matris) så att du kan ange vilka Kubernetes-resurser som ska inkluderas för principutvärdering som matchade de angivna etiketterna och väljarna.
- Ett tomt eller saknat värde gör att principutvärderingen inkluderar alla etiketter och väljare, förutom namnområden som definierats i excludedNamespaces.
scope
(valfritt)apiGroups
(krävs när du använder templateInfo)- En matris som innehåller de API-grupper som ska matchas. En tom matris (
[""]
) är kärn-API-gruppen. - Det är inte tillåtet att
["*"]
definiera för apiGroups .
- En matris som innehåller de API-grupper som ska matchas. En tom matris (
kinds
(krävs när du använder templateInfo)- En matris som innehåller den typ av Kubernetes-objekt som utvärderingen ska begränsas till.
- Det är inte tillåtet att
["*"]
definiera för typer .
values
(valfritt)- Definierar alla parametrar och värden som ska överföras till villkoret. Varje värde måste finnas och matcha en egenskap i valideringsavsnittet
openAPIV3Schema
i villkorsmallen CRD.
- Definierar alla parametrar och värden som ska överföras till villkoret. Varje värde måste finnas och matcha en egenskap i valideringsavsnittet
Granskningsexempel
Exempel 1: Använda granskningseffekten för Resource Manager-lägen.
"then": {
"effect": "audit"
}
Exempel 2: Använda granskningseffekten för ett resursproviderläge i Microsoft.Kubernetes.Data
. Den ytterligare informationen i details.templateInfo
deklarerar användning av PublicURL
och anger url
platsen för villkorsmallen som ska användas i Kubernetes för att begränsa tillåtna containeravbildningar.
"then": {
"effect": "audit",
"details": {
"templateInfo": {
"sourceType": "PublicURL",
"url": "https://store.policy.core.windows.net/kubernetes/container-allowed-images/v1/template.yaml",
},
"values": {
"imageRegex": "[parameters('allowedContainerImagesRegex')]"
},
"apiGroups": [
""
],
"kinds": [
"Pod"
]
}
}
Nästa steg
- Granska exempel i Azure Policy-exempel.
- Granska Azure Policy-definitionsstrukturen.
- Förstå hur du programmatiskt skapar principer.
- Lär dig hur du hämtar efterlevnadsdata.
- Lär dig hur du åtgärdar icke-kompatibla resurser.
- Granska Azure-hanteringsgrupper.