De impact van een nieuwe Azure Policy-definitie evalueren

Azure Policy is een krachtig hulpprogramma voor het beheren van uw Azure-resources om te voldoen aan de nalevingsbehoeften van bedrijfsstandaarden. Wanneer personen, processen of pipelines resources maken of bijwerken, Azure Policy de aanvraag beoordelen. Wanneer het effect van de beleidsdefinitie Wijzigen, Toevoegen of DeployIfNotExists is, wordt de aanvraag gewijzigd of toegevoegd aan het beleid. Wanneer het effect van de beleidsdefinitie Audit of AuditIfNotExists is, zorgt Beleid ervoor dat er een vermelding in het activiteitenlogboek wordt gemaakt voor nieuwe en bijgewerkte resources. En wanneer het effect van de beleidsdefinitie Deny of DenyAction is, stopt Het beleid het maken of wijzigen van de aanvraag.

Deze resultaten zijn precies zoals gewenst wanneer u weet dat het beleid juist is gedefinieerd. Het is echter belangrijk om te controleren of een nieuw beleid werkt zoals bedoeld voordat het werk kan wijzigen of blokkeren. De validatie moet ervoor zorgen dat alleen de beoogde resources niet-compatibel zijn en dat er geen compatibele resources onjuist zijn opgenomen (ook wel fout-positief genoemd) in de resultaten.

De aanbevolen methode voor het valideren van een nieuwe beleidsdefinitie is door de volgende stappen uit te voeren:

  • Uw beleid nauwkeurig definiëren
  • De effectiviteit van uw beleid testen
  • Nieuwe of bijgewerkte resourceaanvragen controleren
  • Uw beleid implementeren in resources
  • Doorlopende bewaking

Uw beleid nauwkeurig definiëren

Het is belangrijk om te begrijpen hoe het bedrijfsbeleid wordt geïmplementeerd als beleidsdefinitie en de relatie tussen Azure-resources en andere Azure-services. Deze stap wordt uitgevoerd door de vereisten te identificeren en de resource-eigenschappen te bepalen. Maar het is ook belangrijk om verder te kijken dan de smalle definitie van uw bedrijfsbeleid. Staat uw beleid bijvoorbeeld 'Alle virtuele machines moeten...'? Hoe zit het met andere Azure-services die gebruikmaken van VM's, zoals HDInsight of AKS? Bij het definiëren van een beleid moeten we overwegen hoe dit beleid van invloed is op resources die door andere services worden gebruikt.

Daarom moeten uw beleidsdefinities zo nauwkeurig mogelijk zijn gedefinieerd en gericht zijn op de resources en de eigenschappen die u moet evalueren voor naleving.

De effectiviteit van uw beleid testen

Voordat u nieuwe of bijgewerkte resources wilt beheren met uw nieuwe beleidsdefinitie, kunt u het beste zien hoe een beperkte subset van bestaande resources, zoals een testresourcegroep, wordt geëvalueerd. Met de Azure Policy VS Code-extensie kunnen definities geïsoleerd worden getest op basis van bestaande Azure-resources met behulp van de evaluatiescan op aanvraag. U kunt de definitie ook toewijzen in een Dev-omgeving met behulp van de afdwingingsmodusUitgeschakeld (DoNotEnforce) voor uw beleidstoewijzing om te voorkomen dat het effect wordt geactiveerd of vermeldingen in het activiteitenlogboek worden gemaakt.

Met deze stap kunt u de nalevingsresultaten van het nieuwe beleid voor bestaande resources evalueren zonder dat dit van invloed is op de werkstroom. Controleer of er geen compatibele resources worden weergegeven als niet-compatibel (fout-positief) en of alle resources die u verwacht niet-compatibel te zijn, correct zijn gemarkeerd. Nadat de eerste subset van resources is gevalideerd zoals verwacht, breidt u de evaluatie langzaam uit naar meer bestaande resources en meer bereiken.

Het evalueren van bestaande resources op deze manier biedt ook de mogelijkheid om niet-compatibele resources te herstellen voordat het nieuwe beleid volledig wordt geïmplementeerd. Deze opschoning kan handmatig of via een hersteltaak worden uitgevoerd als het effect van de beleidsdefinitie DeployIfNotExists of Modify is.

Beleidsdefinities met een DeployIfNotExist moeten gebruikmaken van de Azure Resource Manager-sjabloon wat als u de wijzigingen wilt valideren en testen die optreden bij het implementeren van de ARM-sjabloon.

Nieuwe of bijgewerkte resources controleren

Zodra u hebt gevalideerd dat uw nieuwe beleidsdefinitie correct rapporteert aan bestaande resources, is het tijd om te kijken naar de impact van het beleid wanneer resources worden gemaakt of bijgewerkt. Als de beleidsdefinitie effectparameterisatie ondersteunt, gebruikt u Audit of AuditIfNotExist. Met deze configuratie kunt u het maken en bijwerken van resources controleren om te zien of de nieuwe beleidsdefinitie een vermelding activeert in het Azure-activiteitenlogboek voor een resource die niet-compatibel is zonder dat dit van invloed is op bestaand werk of aanvragen.

Het is raadzaam om zowel nieuwe resources bij te werken als te maken die overeenkomen met uw beleidsdefinitie om te zien dat het effect Audit of AuditIfNotExist correct wordt geactiveerd wanneer verwacht. Wees op zoek naar resourceaanvragen die niet moeten worden beïnvloed door de nieuwe beleidsdefinitie die het effect Audit of AuditIfNotExist activeert. Deze betrokken resources zijn een ander voorbeeld van fout-positieven en moeten worden opgelost in de beleidsdefinitie voordat de volledige implementatie wordt uitgevoerd.

Als de beleidsdefinitie in deze fase van het testen wordt gewijzigd, is het raadzaam om het validatieproces te starten met de controle van bestaande resources. Een wijziging in de beleidsdefinitie voor een fout-positief voor nieuwe of bijgewerkte resources heeft waarschijnlijk ook invloed op bestaande resources.

Uw beleid implementeren in resources

Nadat u de validatie van uw nieuwe beleidsdefinitie hebt voltooid met zowel bestaande resources als nieuwe of bijgewerkte resourceaanvragen, begint u met het implementeren van het beleid. Het is raadzaam om eerst de beleidstoewijzing voor de nieuwe beleidsdefinitie te maken voor een subset van alle resources, zoals een resourcegroep. U kunt verder filteren op resourcetype of locatie met behulp van de resourceSelectors eigenschap binnen de beleidstoewijzing. Na het valideren van de eerste implementatie kunt u het bereik van het beleid uitbreiden naar breder als een resourcegroep. Na het valideren van de eerste implementatie vouwt u de impact van het beleid uit door de filters resourceSelector aan te passen op meer locaties of resourcetypen, of door de toewijzing te verwijderen en te vervangen door een nieuwe op grotere bereiken, zoals abonnementen en beheergroepen. Ga door met deze geleidelijke implementatie totdat deze is toegewezen aan het volledige bereik van resources die zijn bedoeld om te worden gedekt door uw nieuwe beleidsdefinitie.

Als resources zich tijdens de implementatie bevinden die moeten worden uitgesloten van uw nieuwe beleidsdefinitie, kunt u deze op een van de volgende manieren aanpakken:

  • Werk de beleidsdefinitie bij zodat deze explicieter is om onbedoelde impact te verminderen
  • Het bereik van de beleidstoewijzing wijzigen (door een nieuwe toewijzing te verwijderen en te maken)
  • De groep resources toevoegen aan de uitsluitingslijst voor de beleidstoewijzing

Wijzigingen in het bereik (niveau of uitsluitingen) moeten volledig worden gevalideerd en gecommuniceerd met uw beveiligings- en nalevingsorganisaties om ervoor te zorgen dat er geen hiaten in de dekking zijn.

Uw beleid en naleving controleren

Het implementeren en toewijzen van uw beleidsdefinitie is niet de laatste stap. Controleer continu het nalevingsniveau van resources naar uw nieuwe beleidsdefinitie en stel de juiste Azure Monitor-waarschuwingen en -meldingen in voor wanneer niet-compatibele apparaten worden geïdentificeerd. Het wordt ook aanbevolen om de beleidsdefinitie en gerelateerde toewijzingen op een geplande basis te evalueren om te controleren of de beleidsdefinitie voldoet aan de bedrijfsbeleids- en nalevingsbehoeften. Beleidsregels moeten worden verwijderd als u deze niet meer nodig hebt. Beleidsregels moeten ook van tijd tot tijd worden bijgewerkt naarmate de onderliggende Azure-resources zich ontwikkelen en nieuwe eigenschappen en mogelijkheden toevoegen.

Volgende stappen