Quickstart: Een beleidstoewijzing maken om niet-compatibele resources te identificeren met behulp van Azure CLI
De eerste stap in het begrijpen van naleving in Azure is het identificeren van de status van uw resources. In deze quickstart maakt u een beleidstoewijzing om niet-compatibele resources te identificeren met behulp van Azure CLI. Het beleid wordt toegewezen aan een resourcegroep en controleert virtuele machines die geen beheerde schijven gebruiken. Nadat u de beleidstoewijzing hebt gemaakt, identificeert u niet-compatibele virtuele machines.
Azure CLI wordt gebruikt voor het maken en beheren van Azure-resources vanaf de opdrachtregel of in scripts. In deze gids wordt Azure CLI gebruikt om een beleidstoewijzing te maken om niet-compatibele resources te identificeren in uw Azure-omgeving.
Wanneer u een ingebouwde beleids- of initiatiefdefinitie toewijst, is het optioneel om te verwijzen naar een versie. Beleidstoewijzingen van ingebouwde definities zijn standaard ingesteld op de meest recente versie en nemen automatisch kleine versiewijzigingen over, tenzij anders opgegeven.
Vereisten
- Als u geen Azure-account hebt, maak dan een gratis account aan voordat u begint.
- Azure CLI.
- Visual Studio Code.
Microsoft.PolicyInsights
moet zijn geregistreerd in uw Azure-abonnement. Als u een resourceprovider wilt registreren, moet u gemachtigd zijn om resourceproviders te registreren. Deze machtiging is opgenomen in de rollen Inzender en Eigenaar.- Een resourcegroep met ten minste één virtuele machine die geen beheerde schijven gebruikt.
Verbinding maken met Azure
Maak vanuit een Visual Studio Code-terminalsessie verbinding met Azure. Als u meer dan één abonnement hebt, voert u de opdrachten uit om context in te stellen op uw abonnement. Vervang <subscriptionID>
door de id van uw Azure-abonnement.
az login
# Run these commands if you have multiple subscriptions
az account list --output table
az account set --subscription <subscriptionID>
Resourceprovider registreren
Wanneer een resourceprovider is geregistreerd, is deze beschikbaar voor gebruik in uw Azure-abonnement.
Voer uit Get-AzResourceProvider
om te controleren of Microsoft.PolicyInsights
deze is geregistreerd. De resourceprovider bevat verschillende resourcetypen. Als het resultaat wordt NotRegistered
uitgevoerd Register-AzResourceProvider
:
az provider show \
--namespace Microsoft.PolicyInsights \
--query "{Provider:namespace,State:registrationState}" \
--output table
az provider register --namespace Microsoft.PolicyInsights
De Azure CLI-opdrachten gebruiken een backslash (\
) om de leesbaarheid te verbeteren. Ga naar az provider voor meer informatie.
Een beleidstoewijzing maken
Gebruik de volgende opdrachten om een nieuwe beleidstoewijzing voor uw resourcegroep te maken. In dit voorbeeld wordt een bestaande resourcegroep gebruikt die een virtuele machine zonder beheerde schijven bevat. De resourcegroep is het bereik voor de beleidstoewijzing. In dit voorbeeld wordt gebruikgemaakt van de ingebouwde beleidsdefinitie Vm's controleren die geen beheerde schijven gebruiken.
Voer de volgende opdrachten uit en vervang deze door <resourceGroupName>
de naam van de resourcegroep:
rgid=$(az group show --resource-group <resourceGroupName> --query id --output tsv)
definition=$(az policy definition list \
--query "[?displayName=='Audit VMs that do not use managed disks']".name \
--output tsv)
De rgid
variabele slaat de resourcegroep-id op. De definition
variabele slaat de naam van de beleidsdefinitie op, een GUID.
Voer de volgende opdracht uit om de beleidstoewijzing te maken:
az policy assignment create \
--name 'audit-vm-managed-disks' \
--display-name 'Audit VM managed disks' \
--scope $rgid \
--policy $definition \
--description 'Azure CLI policy assignment to resource group'
name
maakt de naam van de beleidstoewijzing die wordt gebruikt in de toewijzingResourceId
.display-name
is de naam voor de beleidstoewijzing en is zichtbaar in Azure Portal.scope
gebruikt de$rgid
variabele om het beleid toe te wijzen aan de resourcegroep.policy
wijst de beleidsdefinitie toe die is opgeslagen in de$definition
variabele.description
kan worden gebruikt om context over de beleidstoewijzing toe te voegen.
De resultaten van de beleidstoewijzing lijken op het volgende voorbeeld:
"description": "Azure CLI policy assignment to resource group",
"displayName": "Audit VM managed disks",
"enforcementMode": "Default",
"id": "/subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/policyAssignments/audit-vm-managed-disks",
"identity": null,
"location": null,
"metadata": {
"createdBy": "11111111-1111-1111-1111-111111111111",
"createdOn": "2024-02-23T18:42:27.4780803Z",
"updatedBy": null,
"updatedOn": null
},
"name": "audit-vm-managed-disks",
Als u de beleidstoewijzingsgegevens opnieuw wilt weergeven, voert u de volgende opdracht uit:
az policy assignment show --name "audit-vm-managed-disks" --scope $rgid
Ga voor meer informatie naar az policy assignment.
Niet-compatibele resources identificeren
Het duurt enkele minuten voordat de nalevingsstatus voor een nieuwe beleidstoewijzing actief wordt en resultaten geeft over de status van het beleid.
Gebruik de volgende opdracht om resources te identificeren die niet compatibel zijn met de beleidstoewijzing die u hebt gemaakt:
policyid=$(az policy assignment show \
--name "audit-vm-managed-disks" \
--scope $rgid \
--query id \
--output tsv)
az policy state list --resource $policyid --filter "(isCompliant eq false)"
De policyid
variabele gebruikt een expressie om de id van de beleidstoewijzing op te halen. De filter
parameter beperkt de uitvoer tot niet-compatibele resources.
De az policy state list
uitvoer is uitgebreid, maar in dit artikel ziet u complianceState
het volgende NonCompliant
:
"complianceState": "NonCompliant",
"components": null,
"effectiveParameters": "",
"isCompliant": false,
Ga naar az policy state voor meer informatie.
Resources opschonen
Voer de volgende opdracht uit om de beleidstoewijzing te verwijderen:
az policy assignment delete --name "audit-vm-managed-disks" --scope $rgid
Afmelden bij uw Azure CLI-sessie:
az logout
Volgende stappen
In deze Quick Start hebt u een beleidsdefinitie toegewezen om niet-compatibele resources in uw Azure-omgeving te identificeren.
Ga verder met de zelfstudie voor meer informatie over het toewijzen van beleidsregels voor het valideren van resourcenaleving.