Share via


Azure Policy gebruiken om beheerde identiteiten toe te wijzen (preview)

Azure Policy helpt bij het afdwingen van organisatiestandaarden en het beoordelen van naleving op schaal. Via het nalevingsdashboard biedt Azure Policy een geaggregeerde weergave waarmee beheerders de algehele status van de omgeving kunnen evalueren. U kunt inzoomen op de granulariteit per resource, per beleid. Het helpt ook om uw resources aan de naleving te brengen via bulkherstel voor bestaande resources en automatisch herstel voor nieuwe resources. Veelvoorkomende gebruiksvoorbeelden voor Azure Policy zijn het implementeren van governance voor:

  • Resourceconsistentie
  • Naleving van regelgeving
  • Beveiliging
  • Kosten
  • Beheer

Beleidsdefinities voor deze veelvoorkomende use cases zijn al beschikbaar in uw Azure-omgeving om u te helpen aan de slag te gaan.

Azure Monitoring Agents vereisen een beheerde identiteit op de bewaakte virtuele Azure-machines (VM's). In dit document wordt het gedrag beschreven van een ingebouwd Azure Policy dat door Microsoft wordt geleverd om ervoor te zorgen dat een beheerde identiteit, die nodig is voor deze scenario's, op schaal wordt toegewezen aan VM's.

Hoewel het gebruik van door het systeem toegewezen beheerde identiteit mogelijk is, leidt dit bij gebruik op schaal (bijvoorbeeld voor alle VM's in een abonnement) tot een aanzienlijk aantal gemaakte identiteiten (en verwijderd) in Microsoft Entra-id. Om dit verloop van identiteiten te voorkomen, is het raadzaam om door de gebruiker toegewezen beheerde identiteiten te gebruiken, die eenmaal kunnen worden gemaakt en gedeeld tussen meerdere VM's.

Notitie

U wordt aangeraden een door de gebruiker toegewezen beheerde identiteit per Azure-abonnement per Azure-regio te gebruiken.

Het beleid is ontworpen om deze aanbeveling te implementeren.

Beleidsdefinitie en -details

Wanneer het beleid wordt uitgevoerd, worden de volgende acties uitgevoerd:

  1. Maak, indien niet aanwezig, een nieuwe, door de gebruiker toegewezen beheerde identiteit in het abonnement en elke Azure-regio op basis van de VM's die binnen het bereik van het beleid vallen.
  2. Nadat de gebruiker is gemaakt, plaatst u een vergrendeling op de door de gebruiker toegewezen beheerde identiteit, zodat deze niet per ongeluk wordt verwijderd.
  3. Wijs de ingebouwde door de gebruiker toegewezen beheerde identiteit toe aan virtuele machines vanuit het abonnement en de regio op basis van de VM's die binnen het bereik van het beleid vallen.

Notitie

Als aan de virtuele machine precies 1 door de gebruiker toegewezen beheerde identiteit is toegewezen, slaat het beleid deze VM over om de ingebouwde identiteit toe te wijzen. Dit is om ervoor te zorgen dat de toewijzing van het beleid toepassingen die afhankelijk zijn van het standaardgedrag van het tokeneindpunt op IMDS, niet onderbreekt.

Er zijn twee scenario's voor het gebruik van het beleid:

  • Laat het beleid een door de gebruiker toegewezen beheerde identiteit maken en gebruiken.
  • Gebruik uw eigen door de gebruiker toegewezen beheerde identiteit.

Het beleid gebruikt de volgende invoerparameters:

  • Bring-Your-Own-UAMI? - Moet het beleid, indien niet bestaan, een nieuwe door de gebruiker toegewezen beheerde identiteit maken?
  • Als dit is ingesteld op true, moet u het volgende opgeven:
    • Naam van de beheerde identiteit
    • Resourcegroep waarin de beheerde identiteit moet worden gemaakt.
  • Als deze optie is ingesteld op onwaar, is er geen extra invoer nodig.
    • Het beleid maakt de vereiste door de gebruiker toegewezen beheerde identiteit met de naam 'ingebouwde identiteit' in een resourcegroep met de naam 'built-in-identity-rg'.

Het beleid gebruiken

De beleidstoewijzing maken

De beleidsdefinitie kan worden toegewezen aan verschillende bereiken in Azure, in het beheergroepabonnement of een specifieke resourcegroep. Omdat beleidsregels altijd moeten worden afgedwongen, wordt de toewijzingsbewerking uitgevoerd met behulp van een beheerde identiteit die is gekoppeld aan het object beleidstoewijzing. Het beleidstoewijzingsobject ondersteunt zowel door het systeem toegewezen als door de gebruiker toegewezen beheerde identiteit. Joe kan bijvoorbeeld een door de gebruiker toegewezen beheerde identiteit maken met de naam PolicyAssignmentMI. Het ingebouwde beleid maakt een door de gebruiker toegewezen beheerde identiteit in elk abonnement en in elke regio met resources die binnen het bereik van de beleidstoewijzing vallen. De door de gebruiker toegewezen beheerde identiteiten die door het beleid zijn gemaakt, hebben de volgende resourceId-indeling:

/subscriptions/your-subscription-id/resourceGroups/built-in-identity-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/built-in-identity-{location}

Voorbeeld:

/subscriptions/aaaabbbb-aaaa-bbbb-1111-11122223333/resourceGroups/built-in-identity-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/built-in-identity-eastus

Vereiste autorisatie

Voor policyAssignmentMI beheerde identiteit om het ingebouwde beleid toe te wijzen binnen het opgegeven bereik, heeft deze de volgende machtigingen nodig, uitgedrukt als een Azure RBAC -roltoewijzing (op rollen gebaseerd toegangsbeheer van Azure):

Principal Rol/actie Bereik Doel
PolicyAssigmentMI Operator voor beheerde identiteit /subscription/subscription-id/resourceGroups/built-in-identity
OF
Bring-your-own-User-assinged Managed Identity
Vereist om de ingebouwde identiteit toe te wijzen aan VM's.
PolicyAssigmentMI Inzender /subscription/subscription-id> Vereist voor het maken van de resourcegroep die de ingebouwde beheerde identiteit in het abonnement bevat.
PolicyAssigmentMI Inzender voor beheerde identiteit /subscription/subscription-id/resourceGroups/built-in-identity Vereist voor het maken van een nieuwe door de gebruiker toegewezen beheerde identiteit.
PolicyAssigmentMI Beheerder van gebruikerstoegang /subscription/subscription-id/resourceGroups/built-in-identity
OF
Bring-your-own-User-assigned-Managed Identity
Vereist om een vergrendeling in te stellen voor de door de gebruiker toegewezen beheerde identiteit die door het beleid is gemaakt.

Omdat het beleidstoewijzingsobject deze machtiging van tevoren moet hebben, kan PolicyAssignmentMI geen door het systeem toegewezen beheerde identiteit zijn voor dit scenario. De gebruiker die de beleidstoewijzingstaak uitvoert, moet PolicyAssignmentMI vooraf autoriseren met de bovenstaande roltoewijzingen.

Zoals u kunt zien, is de resulterende rol met minimale bevoegdheden vereist 'inzender' in het abonnementsbereik.

Bekende problemen

Mogelijke racevoorwaarde met een andere implementatie die de identiteiten wijzigt die zijn toegewezen aan een virtuele machine, kan leiden tot onverwachte resultaten.

Als er twee of meer parallelle implementaties zijn die dezelfde virtuele machine bijwerken en ze allemaal de identiteitsconfiguratie van de virtuele machine wijzigen, is het mogelijk, onder specifieke raceomstandigheden, dat alle verwachte identiteiten niet aan de machines worden toegewezen. Als het beleid in dit document bijvoorbeeld de beheerde identiteiten van een VIRTUELE machine bijwerkt en tegelijkertijd ook een ander proces wijzigingen aanbrengt in de sectie beheerde identiteiten, is het niet gegarandeerd dat alle verwachte identiteiten correct worden toegewezen aan de VIRTUELE machine.

Volgende stappen