Quickstart: Een beleidstoewijzing maken om niet-compatibele resources met REST API te identificeren
De eerste stap in het begrijpen van naleving in Azure is het identificeren van de status van uw resources. In deze quickstart gaat u een beleidstoewijzing maken voor het identificeren van virtuele machines die geen beheerde schijven gebruiken.
Als u dit proces helemaal hebt doorlopen, kunt u virtuele machines identificeren die geen beheerde schijven gebruiken. Ze zijn niet-compatibel met de beleidstoewijzing.
REST API wordt gebruikt om Azure-resources te maken en beheren. In deze gids wordt REST API gebruikt om een beleidstoewijzing te maken om niet-compatibele resources te identificeren in uw Azure-omgeving.
Vereisten
Als u nog geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
Installeer ARMClient als u dit nog niet hebt gedaan. Dit is een hulpprogramma waarmee HTTP-aanvragen worden verzonden naar Azure Resource Manager-REST API’s. U kunt ook de functie Probeer het nu in de REST-documentatie gebruiken of hulpprogramma’s als Invoke-RestMethod of Postman in PowerShell.
Azure Cloud Shell gebruiken
Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde opdrachten van Cloud Shell gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.
Om Azure Cloud Shell op te starten:
| Optie | Voorbeeld/koppeling |
|---|---|
| Selecteer Nu proberen in de rechterbovenhoek van een codeblok. Als u Uitproberen selecteert, wordt de code niet automatisch gekopieerd naar Cloud Shell. | ![]() |
| Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. | ![]() |
| Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. | ![]() |
Om de code in dit artikel in Azure Cloud Shell uit te voeren:
Start Cloud Shell.
Selecteer de knop Kopiëren op een codeblok om de code te kopiëren.
Plak de code in de Cloud Shell-sessie door CTRL+Shift+V te selecteren in Windows en Linux of door Cmd+Shift+V op macOS te selecteren.
Selecteer Invoeren om de code uit te voeren.
Een beleidstoewijzing maken
In deze quickstart maakt u een beleidstoewijzing en wijst u de definitie Controleer virtuele machines die niet gebruikmaken van beheerde schijven (06a78e20-9358-41c9-923c-fb736d382a4d) toe. Deze beleidsdefinitie identificeert resources die niet voldoen aan de voorwaarden die zijn vastgelegd in de beleidsdefinitie.
Voer de volgende opdracht uit om een beleidstoewijzing te maken:
REST API-URI
PUT https://management.azure.com/{scope}/providers/Microsoft.Authorization/policyAssignments/audit-vm-manageddisks?api-version=2021-09-01Aanvraagtekst
{ "properties": { "displayName": "Audit VMs without managed disks Assignment", "description": "Shows all virtual machines not using managed disks", "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/06a78e20-9358-41c9-923c-fb736d382a4d", "nonComplianceMessages": [ { "message": "Virtual machines should use a managed disk" } ] } }
Het voorgaande eindpunt en de aanvraagbody maken gebruik van de volgende informatie:
REST API-URI:
- Bereik: een bereik bepaalt voor welke resources of groep resources de beleidstoewijzing wordt afgedwongen. Het kan variëren van een beheergroep tot een afzonderlijke resource. Zorg dat u
{scope}vervangt door een van de volgende patronen:- Beheergroep:
/providers/Microsoft.Management/managementGroups/{managementGroup} - Abonnement:
/subscriptions/{subscriptionId} - Resourcegroep:
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName} - Resource:
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}
- Beheergroep:
- Naam: de werkelijke naam van de toewijzing. Voor dit voorbeeld is audit-vm-manageddisks gebruikt.
Aanvraagbody:
- Weergavenaam: de weergavenaam voor de beleidstoewijzing. In dit geval gebruikt u de toewijzing Virtuele machines zonder beheerde schijven controleren.
- Beschrijving: een grondigere uitleg van wat het beleid doet of waarom het aan dit bereik is toegewezen.
- policyDefinitionId: de id van de beleidsdefinitie, op basis waarvan u de toewijzing maakt. In dit geval is het de id van de beleidsdefinitie Virtuele machines zonder beheerde schijven controleren.
- nonComplianceMessages: stel het bericht in dat wordt weergegeven wanneer een resource wordt geweigerd vanwege niet-naleving of als niet-compatibel wordt geëvalueerd. Zie toewijzingsberichten voor niet-naleving voor meer informatie.
Niet-compatibele resources identificeren
Als u de resources wilt bekijken die niet compatibel zijn onder deze nieuwe toewijzing, voert u de volgende opdracht uit om de resource-id's te verkrijgen van de niet-compatibele resources. Deze worden uitgevoerd naar een JSON-bestand:
POST https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policyDefinitions/06a78e20-9358-41c9-923c-fb736d382a4d/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$filter=IsCompliant eq false and PolicyAssignmentId eq 'audit-vm-manageddisks'&$apply=groupby((ResourceId))"
De resultaten zien er ongeveer als volgt uit:
{
"@odata.context": "https://management.azure.com/subscriptions/<subscriptionId>/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest",
"@odata.count": 3,
"value": [{
"@odata.id": null,
"@odata.context": "https://management.azure.com/subscriptions/<subscriptionId>/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity",
"ResourceId": "/subscriptions/<subscriptionId>/resourcegroups/<rgname>/providers/microsoft.compute/virtualmachines/<virtualmachineId>"
},
{
"@odata.id": null,
"@odata.context": "https://management.azure.com/subscriptions/<subscriptionId>/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity",
"ResourceId": "/subscriptions/<subscriptionId>/resourcegroups/<rgname>/providers/microsoft.compute/virtualmachines/<virtualmachine2Id>"
},
{
"@odata.id": null,
"@odata.context": "https://management.azure.com/subscriptions/<subscriptionId>/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity",
"ResourceId": "/subscriptions/<subscriptionName>/resourcegroups/<rgname>/providers/microsoft.compute/virtualmachines/<virtualmachine3Id>"
}
]
}
De resultaten zijn vergelijkbaar met wat in de weergave van de Azure-portal meestal wordt vermeld onder Niet-compatibele resources.
Resources opschonen
Voer de volgende opdracht uit om de beleidstoewijzing te verwijderen:
DELETE https://management.azure.com/{scope}/providers/Microsoft.Authorization/policyAssignments/audit-vm-manageddisks?api-version=2021-09-01
Vervang {scope} door het bereik dat u gebruikte toen u de beleidstoewijzing voor het eerst maakte.
Volgende stappen
In deze Quick Start hebt u een beleidsdefinitie toegewezen om niet-compatibele resources in uw Azure-omgeving te identificeren.
Ga voor meer informatie over het toewijzen van beleid om te controleren of nieuwe resources conform zijn verder met de zelfstudie voor:


