Quickstart: Resource Graph-query uitvoeren met rest API
In deze quickstart wordt beschreven hoe u een Azure Resource Graph-query met REST API uitvoert en de resultaten weergeeft. De REST API-elementen zijn een URI die de API-versie en aanvraagbody bevat die de query bevat. In de voorbeelden wordt Azure CLI gebruikt om u aan te melden bij Azure en waarmee uw account wordt geverifieerd om opdrachten uit te voeren az rest
.
Als u niet bekend bent met REST API, begint u met de Azure REST API-verwijzing voor een algemeen begrip van REST API, in het bijzonder van aanvraag-URI en aanvraagbody. Zie Azure Resource Graph REST API voor de specificaties van Azure Resource Graph.
Vereisten
- Als u geen Azure-account hebt, maak dan een gratis account aan voordat u begint.
- Nieuwste versie van PowerShell of Bash-shell, zoals Git Bash.
- Nieuwste versie van Azure CLI.
- Visual Studio Code.
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}
Gebruik az login
zelfs als u PowerShell gebruikt, omdat in de voorbeelden Azure CLI az rest-opdrachten worden gebruikt.
De syntaxis van de REST API controleren
Er zijn twee elementen voor het uitvoeren van REST API-opdrachten: de REST API-URI en de aanvraagbody. Ga naar Resources voor meer informatie. Als u een query wilt uitvoeren op beheergroep, gebruikt managementGroups
u in plaats van subscriptions
. Als u een query wilt uitvoeren op de hele tenant, laat u zowel de als subscriptions
de managementGroups
eigenschappen van de aanvraagtekst weg.
In het volgende voorbeeld ziet u de syntaxis van de REST API-URI om een query uit te voeren voor een Azure-abonnement.
POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2022-10-01
Er is een aanvraagbody nodig om een query uit te voeren met REST API. Het volgende voorbeeld is de JSON om een aanvraagbodybestand te maken.
{
"subscriptions": [
"{subscriptionID}"
],
"query": "Resources | project name, type | limit 5"
}
Resource Graph-query uitvoeren
In de voorbeelden wordt dezelfde az rest
opdracht gebruikt, maar u wijzigt de hoofdtekst van de aanvraag om verschillende resultaten te krijgen. In de voorbeelden worden resources weergegeven, resources gesorteerd op de name
eigenschap en resources gesorteerd op basis van de name
eigenschap en het aantal resultaten beperkt.
Als u alle queryvoorbeelden wilt uitvoeren, gebruikt u de volgende az rest
opdracht voor uw shell-omgeving:
az rest --method post --uri https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2022-10-01 --body `@request-body.json
In PowerShell is de backtick (`
) nodig om de at sign
(@
) te escapen om een bestandsnaam voor de aanvraagbody op te geven.
Vervang in elk voorbeeld van de aanvraagtekst door {subscriptionID}
uw Azure-abonnements-id. Voer de volgende opdracht uit om uw Azure-abonnements-id op te halen voor de aanvraagbody:
az account show --query id --output tsv
Resources weergeven
Maak in Visual Studio Code een nieuw bestand met de naam request-body.json. Kopieer en plak de volgende JSON in het bestand en sla het bestand op.
De query retourneert vijf Azure-resources met de name
en resource type
van elke resource.
{
"subscriptions": [
"{subscriptionID}"
],
"query": "Resources | project name, type | limit 5"
}
Omdat dit queryvoorbeeld geen sorteeraanpassing biedt, levert order by
het uitvoeren van deze query meerdere keren een andere set resources per aanvraag op.
Order by name property
Werk request-body.json bij met de volgende code waarmee de query wordt gewijzigd in order by
de name
eigenschap. Sla het bestand op en gebruik de az rest
opdracht om de query uit te voeren.
{
"subscriptions": [
"{subscriptionID}"
],
"query": "Resources | project name, type | limit 5 | order by name asc"
}
Als u deze query meerdere keren uitvoert, levert dit een andere set resources per aanvraag op.
De volgorde van de queryopdrachten is belangrijk. In dit voorbeeld komt order by
na limit
. Met deze opdrachtvolgorde worden de queryresultaten beperkt tot vijf resources en worden ze vervolgens gesorteerd.
Order by name property and limit results
Werk request-body.json bij met de volgende code naar order by
de name
eigenschap en vervolgens limit
naar de top vijf resultaten. Sla het bestand op en gebruik dezelfde az rest
opdracht om de query uit te voeren.
{
"subscriptions": [
"{subscriptionID}"
],
"query": "Resources | project name, type | order by name asc | limit 5"
}
Als de query meerdere keren wordt uitgevoerd, ervan uitgaande dat er niets in uw omgeving is gewijzigd, zijn de geretourneerde resultaten consistent en gerangschikt door de name
eigenschap, maar beperkt tot de top vijf resultaten.
Resources opschonen
Meld u af bij uw Azure CLI-sessie.
az logout
Volgende stappen
In deze quickstart hebt u het Azure Resource Graph REST API-eindpunt gebruikt om een query uit te voeren. Ga verder naar de pagina met details van de querytaal voor meer informatie over de taal van Resource Graph.