Beleidgestuurde kaders aannemen

Voordat u beleidsregels gebruikt, moet u weten waar ze worden gebruikt in de referentie-implementaties van de Azure-landingszone en waarom. Dit artikel helpt u te begrijpen of u Wilt voorkomen dat DeployIfNotExists (DINE) of Beleid wijzigen wijzigingen aanbrengt in uw Azure-omgeving.

Waarom DINE en Beleid wijzigen gebruiken?

DINE en Modify-beleid maken deel uit van de referentie-implementaties van de Azure-landingszone. Ze helpen u en uw organisatie ervoor te zorgen dat uw landingszones, ook wel abonnementen genoemd, en de resources binnen deze zones compatibel zijn. Deze beleidsregels verwijderen ook de operationele last voor platform- en landingszoneteams wanneer uw Azure-omgeving wordt geschaald.

Denk bijvoorbeeld aan een scenario waarin een nieuw landingszoneabonnement wordt ingericht en in de beheergroep 'corp' wordt geplaatst. DINE en Modify-beleid voeren vervolgens de volgende acties uit voor het abonnement op de landingszone:

  • Schakel Microsoft Defender voor Cloud in. Configureer Defender voor Cloud exports naar de centrale Log Analytics-werkruimte in het beheerabonnement.
  • Schakel Defender voor Cloud in voor de verschillende ondersteunde aanbiedingen op basis van de beleidsparameters die zijn geconfigureerd voor de beleidstoewijzing.
  • Configureer de Azure-activiteitenlogboeken die moeten worden verzonden naar de centrale Log Analytics-werkruimte in het beheerabonnement.
  • Configureer de diagnostische instellingen voor alle resources die moeten worden verzonden naar de centrale Log Analytics-werkruimte in het beheerabonnement.
  • Implementeer de vereiste Azure Monitor-agents voor virtuele machines en Virtuele-machineschaalsets van Azure, inclusief met Azure Arc verbonden servers. Verbinding maken ze naar de centrale Log Analytics-werkruimte in het beheerabonnement.

Notitie

U kunt de voorgaande opties op elk gewenst moment of tijdens de implementatie van de referentie-implementaties van de Azure-landingszone uitschakelen.

In de voorgaande lijst ziet u een subset van alle beleidsregels die zijn toegewezen als onderdeel van de Azure-landingszoneversneller. Zie Beleidsregels die zijn opgenomen in referentie-implementaties van Azure-landingszones voor een volledige lijst met beleidsregels die kunnen worden toegewezen door de referentie-implementaties van de Azure-landingszone.

De Bicep-opslagplaats voor Azure-landingszones is modulair. De bovenstaande standaardbeleidsregels kunnen worden geïmplementeerd met de module STANDAARDbeleidstoewijzingen voor ALZ.

Alle toegewezen beleidsregels helpen u en de eigenaren van de landingszone compatibel te blijven. Er worden geen werkelijke workloadresources geïmplementeerd via DINE of Beleid wijzigen. We raden dit ook niet aan. Zie Voor meer informatie, moeten we Azure Policy gebruiken om workloads te implementeren?. Alleen hulp- of ondersteunende resources of instellingen worden geïmplementeerd of geconfigureerd door dit DINE-beleid.

De Azure-landingszones verwijzen naar implementaties die gebruikmaken van DINE Azure-beleid om u te helpen bij het bereiken van beleidgestuurde governance binnen uw Azure-omgeving. Maar misschien kunt u geen DINE- of Modify-beleid gebruiken of bent u niet klaar om dit type Azure Policy-effect in te schakelen vanwege:

  • Nalevingsbeleid voor regelgeving, standaarden of wettelijke beperkingen.
  • Strikte processen voor wijzigingsbeheer waarvoor menselijke goedkeuring is vereist voor elke actie in uw Azure-omgeving.
  • Gebrek aan expertise, ervaring en begrip van het beheren en gebruiken van DINE-beleid.
  • Organisatievereisten die alle workloadresourceconfiguratie, inclusief hulpresources, ondersteunende resources en instellingen, worden gedefinieerd in infrastructuur als code (IaC) door de workloadtoepassingsteams.

Als u in de voorgaande voorbeelden of vergelijkbare scenario's past, helpt dit artikel u te begrijpen hoe u de conceptuele architectuur van de Azure-landingszone kunt gebruiken en voldoet aan de ontwerpprincipes. Hoewel u in eerste instantie geen bepaald beleid gaat gebruiken, kunt u ervoor kiezen om ze in de toekomst geleidelijk in te schakelen. Het doel is om u te helpen beleidsgestuurde governance te bereiken.

Belangrijk

In dit artikel ziet u twee mogelijke waarden die worden gebruikt voor de termen voor de afdwingingsmodus:

  • Uitgeschakeld of DoNotEnforce
  • Ingeschakeld of standaard

Azure Portal maakt gebruik van Uitgeschakeld en Ingeschakeld voor de afdwingingsmodus. Arm-sjablonen (Azure Resource Manager) en andere API-interfaces gebruiken DoNotEnforce en Default voor dezelfde opties.

Zie de afdwingingsmodus voor meer informatie.

Als u nog steeds zeker weet dat uw organisatie geen DINE- of Wijzigingsbeleid kan gebruiken, wordt in dit artikel uitgelegd hoe u kunt voorkomen dat (ook wel bekend als uitschakelen) het beleid automatische wijzigingen aanbrengt in uw Azure-omgeving.

Notitie

Deze bewerking is niet permanent. Het beleid kan op elk gewenst moment opnieuw worden uitgevoerd door een lid van uw platformteam als u later besluit om DINE of Modify-beleid te gebruiken.

Zie fase 2 en fase 3 voor meer informatie.

Ondersteuning voor resourceselectors is ook van toepassing op beleidsgestuurde governance om ervoor te zorgen dat SDP (Safe Deployment Practices) wordt nageleefd. Resourceselectors zorgen voor de functionaliteit van geleidelijke implementatie van beleidstoewijzingen op basis van factoren zoals resourcelocatie, resourcetype of of de resource een locatie heeft. Meer informatie vindt u in dit document.

Overzicht van benadering

In het volgende diagram ziet u een overzicht van de voorgestelde gefaseerde benadering:

Graphic that shows a DINE phases overview.

  1. Stel de afdwingingsmodusDoNotEnforce in op beleidstoewijzingen:
    • Door deze functie te gebruiken, kunt u het gedrag van de toewijzingen wijzigen om effectief een beleid voor alleen controle te worden zonder de onderliggende beleidsdefinitie te wijzigen.
    • Met deze methode kunt u ook handmatige hersteltaken uitvoeren op niet-compatibele resources door hersteltaken te gebruiken als u dat wilt.
  2. Stel de afdwingingsmodusDefault in op beleidstoewijzingen om het automatische herstel van DINE-beleidstoewijzingen te herstellen voor een beperkt bereik:
    • U kunt ervoor kiezen om een volledige omgeving te gebruiken, bijvoorbeeld de sandbox-beheergroep.
    • U kunt ook een niet-kritiek workloadabonnement gebruiken.
  3. Stel de afdwingingsmodusDefault in op beleidstoewijzingen voor de resterende DINE-beleidsregels in de hele Azure-omgeving.

Vanwege nalevingsbeperkingen voor regelgeving kunnen sommige klanten nooit verdergaan dan fase 1. Dit is geen probleem en wordt ondersteund om zo nodig in deze status te blijven. Andere klanten kunnen verder gaan met fase 2 en 3 om volledig gebruik te maken van DINE en Modify-beleid om te helpen bij beleidgestuurde governance voor hun Azure-omgeving.

Notitie

Het scenario en de benadering die in dit artikel worden beschreven, is niet bedoeld voor of aanbevolen voor het merendeel van de klanten. Raadpleeg de sectie DINE en Modify-beleid voordat u besluit of deze beleidsregels geschikt en vereist zijn voor uw omgeving.

Fase 1: Geautomatiseerde acties DINE uitschakelen en beleid wijzigen

Wanneer u een beleid toewijst, is standaard het effect dat in de beleidsdefinitie is gedefinieerd, van toepassing. U wordt aangeraden de beleidsdefinitie te laten zoals dat is. Laat bijvoorbeeld het effect van de beleidstoewijzing op DeployIfNotExists.

In plaats van de beleidsdefinitie of het effect ervan te wijzigen, kunt u dit gedrag met minimale inspanning beïnvloeden met behulp van de functie voor beleidstoewijzingen.

Azure Portal gebruiken om de afdwingingsmodus in te stellen op Uitgeschakeld

In deze schermopname ziet u hoe u azure Portal gebruikt om de afdwingingsmodus in te stellen op Uitgeschakeld voor een beleidstoewijzing. Uitgeschakeld wordt ook wel DoNotEnforce genoemd.

Set the enforcement mode to Disabled in the Azure portal.

De ARM-sjabloon gebruiken om de afdwingingsmodus in te stellen op DoNotEnforce

In dit codevoorbeeld ziet u hoe u een ARM-sjabloon gebruikt om in te stellen enforcementModeDoNotEnforce op een beleidstoewijzing. DoNotEnforce wordt ook wel bekend als Disabled.

{
  "type": "Microsoft.Authorization/policyAssignments",
  "apiVersion": "2019-09-01",
  "name": "PolicyAssignmentName",
  "location": "[deployment().location]",
  "properties": {
    "description": "PolicyAssignmentDescription",
    "policyDefinitionId": "[parameters('policyDefinitionId')]",
    "enforcementMode": "DoNotEnforce"
    … // other properties removed for display purposes
  }
}

Met behulp van de afdwingingsmodus kunt u het effect zien van een beleid op bestaande resources zonder deze te initiëren of vermeldingen in het Azure-activiteitenlogboek te activeren. Dit scenario wordt meestal 'What If' genoemd en is afgestemd op veilige implementatieprocedures.

Zelfs wanneer de afdwingingsmodus is ingesteld op DoNotEnforce, kunnen hersteltaken handmatig worden geactiveerd. U kunt specifieke niet-compatibele resources herstellen. U kunt ook zien wat het beleid DINE of Modify zou hebben gedaan als de afdwingingsmodus is ingesteld op Default.

Belangrijk

Wanneer de afdwingingsmodus is ingesteld op DoNotEnforce, worden vermeldingen in het Azure-activiteitenlogboek niet gegenereerd. Houd rekening met deze factor als u een melding wilt ontvangen wanneer er een niet-compatibele resource wordt gemaakt.

Blijf permanent in fase 1

Zoals vermeld in de sectie Benaderingsoverzicht , moeten sommige klanten mogelijk gedurende een lange periode of zelfs permanent in fase 1 blijven vanwege hun vereisten. Deze status is geldig en klanten kunnen er voor elke tijd in blijven.

Misschien moet u in deze staat blijven of gedurende een lange periode, zoals jaren. Als dat het geval is, is het misschien beter voor u om het (AINE)-beleidseffect en de AuditIfNotExists bijbehorende definities te gebruiken en de afdwingingsmodus weer in te stellen op Default.

Notitie

Door over te schakelen naar het gebruik van een AINE-beleid en de afdwingingsmodus Defaultin te stellen, bereikt u nog steeds hetzelfde doel van het uitschakelen van DINE.

Wanneer u overstapt van DINE naar AINE en de afdwingingsmodus weer Default instelt op een langetermijn- of permanente benadering voor fase 1, krijgt u de vermeldingen in het Azure-activiteitenlogboek terug voor beleidsnalevingsstatussen. U kunt automatiseringswerkstromen bouwen op basis van deze logboekvermeldingen in uw algemene platformbeheerbewerkingen.

U verliest de mogelijkheid om handmatige hersteltaken uit te voeren. In tegenstelling tot DINE-beleidsregels worden er geen implementaties uitgevoerd, ofwel geautomatiseerd of handmatig.

Vergeet niet om de beleidsdefinitie bij te werken om het effect van de AuditIfNotExists beleidstoewijzing te accepteren en toe te staan.

De volgende tabel bevat een overzicht van de opties en implicaties voor de verschillende typen beleidseffecten en combinaties van afdwingingsmodus:

Beleidseffect De afdwingingsmodus Vermelding in het activiteitenlogboek Herstelactie
DINEREN Ingeschakeld of standaard Ja Door het platform geactiveerde herstel op schaal na het maken of bijwerken van resources. Handmatig maken van een hersteltaak die is vereist als de afhankelijke resource wordt gewijzigd of vooraf bestaat vóór de beleidstoewijzing.
DINEREN Uitgeschakeld of DoNotEnforce Nee Handmatig maken van een hersteltaak vereist.
Wijzigen Ingeschakeld of standaard Ja Automatisch herstel tijdens het maken of bijwerken.
Wijzigen Uitgeschakeld of DoNotEnforce Nee Handmatig maken van een hersteltaak vereist.
Weigeren Ingeschakeld of standaard Ja Het maken of bijwerken is geweigerd.
Weigeren Uitgeschakeld of DoNotEnforce Nee Het maken of bijwerken is toegestaan. Handmatig herstel vereist.
Controle/AINE Ingeschakeld of standaard Ja Handmatig herstel vereist.
Controle/AINE Uitgeschakeld of DoNotEnforce Nee Handmatig herstel vereist.

Notitie

Bekijk de richtlijnen in Reageren op statuswijzigingsevenementen van Azure Policy om te begrijpen of het gebruik van de Azure Event Grid-integratie met Azure Policy een geschikte aanpak biedt als u van plan bent om uw eigen automatisering te bouwen op basis van beleidsstatus gebeurtenissen.

Fase 2: DINE inschakelen en beleid wijzigen voor een specifiek beleid of een beperkt bereik

In deze fase leert u hoe u de afdwingingsmodus Default instelt op beleidstoewijzingen.

Nadat u fase 1 hebt voltooid, besluit u dat u de volledige automatiseringsmogelijkheden van DINE en Modify wilt testen en uitproberen voor een specifiek beleid of voor een beperkt bereik. U wilt de sandbox-beheergroep of een niet-productieworkloadabonnement gebruiken.

Als u deze procedure wilt uitvoeren, moet u eerst het beleid of het beperkte bereik identificeren dat wordt gebruikt voor het testen en uitproberen van de volledige automatiseringsmogelijkheden van het beleid DINE en Modify.

Notitie

U kunt een testbenadering voor een platform op ondernemingsniveau beoordelen en implementeren. Op deze manier kunt u beleidsregels en andere platformwijzigingen testen in een gescheiden beheergroephiërarchie binnen dezelfde tenant.

Deze benadering wordt ook wel een 'canary'-implementatie genoemd.

Enkele voorgestelde voorbeelden van bereiken en beleidsregels worden weergegeven in de volgende tabel:

Wanneer u wilt... ... kies uit deze bereiken Voorbeeldbeleid dat moet worden gebruikt
- Test de geautomatiseerde herstelmogelijkheden van DINE/Modify.
- Controleer of uw volledige implementatieprocessen en CI/CD-pijplijnen, inclusief tests, mogelijk worden beïnvloed.
- Controleer hoe uw werkbelasting mogelijk wordt beïnvloed.
- Sandbox-abonnement
- Sandbox-beheergroep
- Abonnement op landingszone voor niet-productieworkloads
- "Canary"-omgeving op ondernemingsniveau
- Configureer Azure-activiteitenlogboeken om te streamen naar een opgegeven Log Analytics-werkruimte.
- Implementeer Defender voor Cloud configuratie.
- Schakel Azure Monitor in voor VM's of virtuele-machineschaalsets.
- Diagnostische instellingen implementeren in Azure-services.
- Mogelijk alleen inschakelen voor specifieke services binnen het initiatief.

U kunt ook besluiten om een handmatige hersteltaak te gebruiken voor een beperkt bereik of een set resources om te testen hoe dit beleid van invloed is op uw omgeving. Zie de Documentatie van Azure Policy Een hersteltaak maken voor meer informatie over het maken van een hersteltaak.

Nadat u een beleid of beleid hebt geïdentificeerd en het beperkte bereik om deze toe te wijzen, is de volgende stap het toewijzen van het beleid en het instellen van de afdwingingsmodus op Default. Laat het beleidseffect bijvoorbeeld DeployIfNotExists staan of Modify, zoals het beperkte bereik dat u hebt geselecteerd.

De Azure-portal gebruiken om de afdwingingsmodus in te stellen op Ingeschakeld

In deze schermopname ziet u hoe u de Azure-portal gebruikt om de afdwingingsmodus in te stellen op Ingeschakeld voor een beleidstoewijzing. Ingeschakeld staat ook bekend als Standaard.

Screenshot that shows setting the enforcement mode to Enabled in the Azure portal.

Een ARM-sjabloon gebruiken om de afdwingingsmodus in te stellen op Standaard

In dit codevoorbeeld ziet u hoe u een ARM-sjabloon gebruikt om in te stellen enforcementModeDefault op een beleidstoewijzing. Default wordt ook wel bekend als Enabled.

{
  "type": "Microsoft.Authorization/policyAssignments",
  "apiVersion": "2019-09-01",
  "name": "PolicyAssignmentName",
  "location": "[deployment().location]",
  "properties": {
    "description": "PolicyAssignmentDescription",
    "policyDefinitionId": "[parameters('policyDefinitionId')]",
    "enforcementMode": "Default"
    … // other properties removed for display purposes
  }
}

Testen

De laatste stap in deze fase is het uitvoeren van de vereiste tests. U wilt controleren of en hoe beleid voor DINE of Wijzigen mogelijk gevolgen heeft gehad en wijzigingen heeft aangebracht in uw workloads, code, hulpprogramma's en processen.

Voer meerdere tests uit om de volledige levenscyclus van uw workload vast te leggen. U wilt ervoor zorgen dat u volledig begrijpt of en hoe DINE of Modify-beleid wijzigingen heeft aangebracht.

Enkele voorbeelden van testen zijn:

  • Initiële implementatie van workload.
  • Code/toepassingsimplementatie op workload.
  • Dag 2 bewerkingen en beheer van de workload.
  • Buiten gebruik stellen van werkbelasting.

Fase 3: DINE inschakelen en beleid overal wijzigen

In deze fase leert u hoe u de afdwingingsmodus Default instelt op beleidstoewijzingen.

We gaan ervan uit dat uw test aan het einde van fase 2 is geslaagd. Of misschien bent u tevreden dat u nu begrijpt hoe DINE of Modify-beleid communiceert met uw workload. U kunt nu het gebruik van DINE en Modify-beleid uitbreiden in de rest van uw Azure-omgeving.

Als u wilt doorgaan, volgt u de stappen die vergelijkbaar zijn met de stappen in fase 2. Deze keer stelt u de afdwingingsmodus Default in op alle DINE- en wijzigingsbeleidstoewijzingen in uw hele Azure-omgeving.

Hier volgt een algemeen overzicht van de stappen die u in deze fase uitvoert:

  • Verwijder toewijzingen die specifiek worden gebruikt voor testen tijdens fase 2.
  • Doorloop elke DINE en Wijzig beleidstoewijzing in uw Azure-omgeving en stel de afdwingingsmodus in op Default. Dit proces wordt weergegeven in de voorbeelden in fase 2.
  • Maak hersteltaken voor bestaande resources die niet compatibel zijn door de richtlijnen in Een hersteltaak maken te volgen. Nieuwe resources worden automatisch hersteld als ze voldoen aan de beleidsregels en bestaansvoorwaarden.

Hoewel u in fase 3 het beste de afdwingingsmodus Default instelt op alle DINE- en Modify-beleidsregels in uw Azure-omgeving, is deze keuze nog steeds optioneel. U kunt deze keuze per beleid maken om aan uw behoeften en vereisten te voldoen.

Geavanceerd beleidsbeheer

Voor geavanceerd beheer van Azure Policy op schaal kunt u overwegen Enterprise Policy as Code (EPAC) te implementeren voor het beheren van beleid. EPAC biedt een stateful beheerervaring die gebruikmaakt van IaC. Het past in het algemeen bij grote scenario's voor beleidsbeheer met complexe vereisten.