Oorzaken van niet-naleving bepalen

Wanneer wordt vastgesteld dat een Azure-resource niet compatibel is met een beleidsregel, is het handig om te begrijpen met welk deel van de regel de resource niet compatibel is. Het is ook handig om te begrijpen welke wijziging een eerder compatibele resource heeft gewijzigd om deze niet-compatibel te maken. Er zijn twee manieren om deze informatie te vinden:

Nalevingsdetails

Wanneer een resource niet-compatibel is, zijn de nalevingsdetails voor die resource beschikbaar op de pagina Beleidsconforme naleving. Het deelvenster met nalevingsdetails bevat de volgende informatie:

  • Resourcedetails, zoals naam, type, locatie en resource-id
  • Nalevingstoestand en tijdstempel van de laatste evaluatie voor de huidige beleidstoewijzing
  • Een lijst met redenen voor niet-naleving van de resource

Belangrijk

Omdat de nalevingsdetails voor een niet-compatibele resource de huidige waarde van eigenschappen voor die resource weergeven, moet de gebruiker een leesbewerking hebben voor het type resource. Als de niet-compatibele resource bijvoorbeeld Microsoft.Compute/virtualMachines is, moet de gebruiker de bewerking Microsoft.Compute/virtualMachines/read hebben. Als de gebruiker niet de benodigde bewerking heeft, wordt er een toegangsfout weergegeven.

Volg deze stappen om de nalevingsdetails weer te geven:

  1. Start de Azure Policy-service in Azure Portal door Alle services te selecteren en dan Beleid te zoeken en te selecteren.

  2. Selecteer op de pagina Overzicht of Naleving een beleid met een nalevingsstaat die niet-compatibel is.

  3. Selecteer op het tabblad Resource-naleving van de pagina Beleidsconformie de optie en houd deze ingedrukt (of klik er met de rechtermuisknop op) of selecteer het beletselteken van een resource met een nalevingstoestand die niet compatibel is. Selecteer vervolgens Nalevingsdetails weergeven.

    Schermopname van de koppeling 'Nalevingsdetails weergeven' op het tabblad Resource-naleving.

  4. In het deelvenster Nalevingsdetails wordt informatie weergegeven van de meest recente evaluatie van de resource tot de huidige beleidstoewijzing. In dit voorbeeld is het veld Microsoft.Sql/servers/version 12.0, terwijl voor de beleidsdefinitie 14.0 werd verwacht. Als de resource om meerdere redenen niet-compatibel is, wordt elke resource in dit deelvenster vermeld.

    Schermopname van het deelvenster Details van naleving en redenen voor niet-naleving dat de huidige waarde twaalf is en de doelwaarde niet.

    Voor een beleidsdefinitie auditIfNotExists of deployIfNotExists bevatten de details de eigenschap details.type en eventuele optionele eigenschappen. Zie eigenschappen auditIfNotExists en deployIfNotExistsvoor een lijst. De laatst geëvalueerde resource is een gerelateerde resource uit de sectie details van de definitie.

    Voorbeeld van gedeeltelijke deployIfNotExists-definitie:

    {
        "if": {
            "field": "type",
            "equals": "[parameters('resourceType')]"
        },
        "then": {
            "effect": "DeployIfNotExists",
            "details": {
                "type": "Microsoft.Insights/metricAlerts",
                "existenceCondition": {
                    "field": "name",
                    "equals": "[concat(parameters('alertNamePrefix'), '-', resourcegroup().name, '-', field('name'))]"
                },
                "existenceScope": "subscription",
                "deployment": {
                    ...
                }
            }
        }
    }
    

    Schermopname van het deelvenster Nalevingsdetails voor ifNotExists, inclusief geëvalueerd aantal resources.

Notitie

Als u gegevens wilt beveiligen, geeft de huidige waarde sterretjes weer wanneer een eigenschapswaarde een geheim is.

In deze details wordt uitgelegd waarom een resource momenteel niet-compatibel is, maar niet wordt uitgelegd wanneer de wijziging is aangebracht in de resource waardoor deze niet-compatibel is geworden. Zie Wijzigingsgeschiedenis (preview) hieronder voor deze informatie.

Nalevingsredenen

Resource Manager modi en resourceprovidermodi hebben elk verschillende redenen voor niet-naleving.

Nalevingsredenen Resource Manager algemene modus

In de volgende tabel wordt elke Resource Manager modusreden aan de verantwoordelijke voorwaarde in de beleidsdefinitie:

Reden Voorwaarde
De huidige waarde moet de doelwaarde als sleutel bevatten. containsKey of notContainsKey
De huidige waarde moet de doelwaarde bevatten. contains or notContains
De huidige waarde moet gelijk zijn aan de doelwaarde. is gelijk aan of niet Gelijk aan
De huidige waarde moet kleiner zijn dan de doelwaarde. kleiner of niet groter of gelijk aan
De huidige waarde moet groter zijn dan of gelijk zijn aan de doelwaarde. greaterOrEquals of niet minder
De huidige waarde moet groter zijn dan de doelwaarde. groter of niet lessOrEquals
De huidige waarde moet kleiner zijn dan of gelijk zijn aan de doelwaarde. lessOrEquals of niet groter
De huidige waarde moet bestaan. Bestaat
De huidige waarde moet in de doelwaarde zijn. in of nietin
De huidige waarde moet er als de doelwaarde uit zien. like of notLike
De huidige waarde moet casegevoelig zijn en overeenkomen met de doelwaarde. match or notMatch
De huidige waarde moet niet-gevoelig zijn voor de doelwaarde. matchInsensitively or notMatchInsensitively
De huidige waarde mag de doelwaarde niet als sleutel bevatten. notContainsKey of bevat geen sleutel
De huidige waarde mag de doelwaarde niet bevatten. notContains or not contains
De huidige waarde mag niet gelijk zijn aan de doelwaarde. notEquals or not equals
De huidige waarde mag niet bestaan. bestaat niet
De huidige waarde mag niet in de doelwaarde zijn. notIn of not in
De huidige waarde mag niet hetzelfde zijn als de doelwaarde. notLike of not like
De huidige waarde mag niet met de doelwaarde overeenkomen. notMatch of komt niet overeen
De huidige waarde mag niet niet-niet-gevoelig zijn voor de doelwaarde. notMatchInsensitively or not matchInsensitively (niet matchMatchInsensitively of niet matchInsensitively)
Er zijn geen gerelateerde resources die overeenkomen met de effectdetails in de beleidsdefinitie. Een resource van het type dat is gedefinieerd in then.details.type en is gerelateerd aan de resource die is gedefinieerd in het gedeelte if van de beleidsregel dat niet bestaat.

Nalevingsredenen voor de AKS-resourceprovidermodus

In de volgende tabel wordt elke reden van de resourceprovidermodus aan de verantwoordelijke status van de beperkingssjabloon in de Microsoft.Kubernetes.Data beleidsdefinitie toe te kennen:

Reden Beschrijving van reden beperkingssjabloon
Constraint/TemplateCreateFailed De resource kan niet worden gemaakt voor een beleidsdefinitie met een beperking/sjabloon die niet overeen komt met een bestaande beperking/sjabloon in een cluster op basis van de naam van de metagegevens van de resource.
Constraint/TemplateUpdateFailed De beperking/sjabloon kan niet worden bijgewerkt voor een beleidsdefinitie met een beperking/sjabloon die overeenkomt met een bestaande beperking/sjabloon op cluster op basis van de naam van de resourcemetagegevens.
Constraint/TemplateInstallFailed De beperking/sjabloon kan niet worden gebouwd en kan niet worden geïnstalleerd op het cluster voor een maak- of updatebewerking.
ConstraintTemplateConflicts De sjabloon heeft een conflict met een of meer beleidsdefinities die dezelfde sjabloonnaam gebruiken met een andere bron.
ConstraintStatusStale Er is een bestaande controlestatus, maar Gatekeeper heeft het afgelopen uur geen controle uitgevoerd.
ConstraintNotProcessed Er is geen status en Gatekeeper heeft het afgelopen uur geen controle uitgevoerd.
InvalidConstraint/Template API Server heeft de resource afgewezen vanwege een slechte YAML. Deze reden kan ook worden veroorzaakt door een niet-overeenkomend parametertype (bijvoorbeeld: tekenreeks opgegeven voor een geheel getal)

Notitie

Voor bestaande beleidstoewijzingen en beperkingssjablonen die al op het cluster zijn opgeslagen, wordt het cluster beveiligd door de bestaande beperking/sjabloon te behouden als deze beperking/sjabloon mislukt. Het cluster rapporteert als niet-compatibel totdat de fout is opgelost op de beleidstoewijzing of de invoeg-on zelf wordt hersteld. Zie Beperkingenjabloonconflicten voor meer informatie over het afhandelen van conflicten.

Onderdeeldetails voor resourceprovidermodi

Voor toewijzingen met een resourceprovidermodusselecteert u de resource Niet-compatibel om een diepere weergave te openen. Op het tabblad Onderdeelconformatie vindt u aanvullende informatie die specifiek is voor de modus Resourceprovider in het toegewezen beleid met de niet-compatibele component en onderdeel-id.

Schermopname van het tabblad Component Compliance en details over naleving voor een toewijzing van de resourceprovidermodus.

Nalevingsdetails voor gastconfiguratie

Voor beleidsdefinities in de categorie Gastconfiguratie kunnen er meerdere instellingen worden geëvalueerd binnen de virtuele machine en moet u de details per instelling weergeven. Als u bijvoorbeeld controleert op een lijst met beveiligingsinstellingen en slechts één ervan de status Niet-compatibel heeft, moet u weten welke specifieke instellingen niet compatibel zijn en waarom.

Mogelijk hebt u ook geen toegang om u rechtstreeks aan te melden bij de virtuele machine, maar u moet wel rapporteren waarom de virtuele machine niet compatibel is.

Azure Portal

Begin met het volgen van dezelfde stappen in de bovenstaande sectie voor het weergeven van nalevingsdetails van het beleid.

Selecteer in de weergave Details naleving de koppeling Laatst geëvalueerde resource.

Schermopname van het weergeven van de nalevingsdetails van de definitie auditIfNotExists.

Op de pagina Gasttoewijzing worden alle beschikbare nalevingsdetails weergegeven. Elke rij in de weergave vertegenwoordigt een evaluatie die is uitgevoerd binnen de machine. In de kolom Reden wordt een woordgroep weergegeven waarin wordt beschreven waarom de gasttoewijzing Niet-compatibel is. Als u bijvoorbeeld wachtwoordbeleid controleert, wordt in de kolom Reden tekst weergegeven met de huidige waarde voor elke instelling.

Schermopname van de nalevingsdetails van de gasttoewijzing.

Details van configuratietoewijzing op schaal weergeven

De functie voor gastconfiguratie kan buiten de Azure Policy worden gebruikt. Azure AutoManage maakt bijvoorbeeld gastconfiguratietoewijzingen of u kunt configuraties toewijzen wanneer u machines implementeert.

Als u alle gastconfiguratietoewijzingen in uw tenant wilt weergeven, opent Azure Portal de pagina Gasttoewijzingen. Als u gedetailleerde nalevingsinformatie wilt weergeven, selecteert u elke toewijzing met behulp van de koppeling in de kolom 'Naam'.

Schermopname van de pagina Gasttoewijzing.

Wijzigingsgeschiedenis (preview)

Als onderdeel van een nieuwe openbare preview zijn de laatste 14 dagen van de wijzigingsgeschiedenis beschikbaar voor alle Azure-resources die ondersteuning bieden voor het verwijderen van de volledige modus. Wijzigingsgeschiedenis bevat details over wanneer een wijziging is gedetecteerd en een visueel verschil voor elke wijziging. Een wijzigingsdetectie wordt geactiveerd wanneer Azure Resource Manager eigenschappen worden toegevoegd, verwijderd of gewijzigd.

  1. Start de Azure Policy-service in Azure Portal door Alle services te selecteren en dan Beleid te zoeken en te selecteren.

  2. Selecteer op de pagina Overzicht of Naleving een beleid met een nalevingstoestand.

  3. Selecteer op het tabblad Resource-naleving van de pagina Beleids naleving een resource.

  4. Selecteer het tabblad Wijzigingsgeschiedenis (preview) op de pagina Resource-naleving. Er wordt een lijst met gedetecteerde wijzigingen weergegeven, indien aanwezig.

    Schermopname van het tabblad Wijzigingsgeschiedenis en de gedetecteerde wijzigingstijden op de pagina Resource-naleving.

  5. Selecteer een van de gedetecteerde wijzigingen. Het visuele verschil voor de resource wordt weergegeven op de pagina Wijzigingsgeschiedenis.

    Schermopname van de visual Wijzigingsgeschiedenis Diff van de eigenschappen voor en na de status op de pagina Geschiedenis wijzigen.

De visuele verschillen bij het identificeren van wijzigingen in een resource. De gedetecteerde wijzigingen zijn mogelijk niet gerelateerd aan de huidige nalevingstoestand van de resource.

Wijzigingsgeschiedenisgegevens worden geleverd door Azure Resource Graph. Zie Resourcewijzigingen opvragen als Azure Portal informatie buiten de lijst wilt opvragen.

Volgende stappen