Quickstart: Uw eerste Resource Graph-query uitvoeren met rest API

De eerste stap voor het gebruik van Azure Resource Graph met REST API is om te controleren of u een hulpprogramma hebt om REST API's aan te roepen. In deze quickstart wordt uitgelegd hoe u een query uitvoert en de resultaten ophaalt door het Azure Resource Graph REST API-eindpunt aan te roepen.

Aan het einde van dit proces hebt u de hulpprogramma's om REST API-eindpunten aan te roepen en uw eerste Resource Graph-query uit te voeren.

Vereisten

Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.

Azure Cloud Shell

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 Cloud Shell-opdrachten 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 Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. Button to launch Azure Cloud Shell.
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. Screenshot that shows the Cloud Shell button in the Azure portal

Azure Cloud Shell gebruiken:

  1. Start Cloud Shell.

  2. Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.

  3. Plak de code of opdracht in de Cloud Shell-sessie door Ctrl+Shift+V in Windows en Linux te selecteren of door Cmd+Shift+V te selecteren in macOS.

  4. Selecteer Enter om de code of opdracht uit te voeren.

Aan de slag met REST API

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. In dit artikel worden deze concepten gebruikt om u aan de slag te helpen met Azure Resource Graph. Er wordt van uitgegaan dat u er praktische kennis van hebt. Hulpprogramma's zoals ARMClient en anderen verwerken autorisatie automatisch en zijn voor beginners aangeraden.

Zie Azure resource Graph REST API voor de specificaties van de Azure Resource Graph.

REST API en PowerShell

Als u nog geen hulpprogramma hebt om REST API-aanroepen te doen, kunt u overwegen PowerShell te gebruiken voor deze instructies. Het volgende codevoorbeeld haalt een header op voor verificatie met Azure. Genereer een verificatieheader, ook wel een Bearer-token genoemd, en zorg ervoor dat de REST API-URI verbinding maakt met parameters of een Aanvraagbody:

# Log in first with Connect-AzAccount if not using Cloud Shell

$azContext = Get-AzContext
$azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
$profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile)
$token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId)
$authHeader = @{
    'Content-Type'='application/json'
    'Authorization'='Bearer ' + $token.AccessToken
}

# Invoke the REST API
$restUri = "https://management.azure.com/subscriptions/$($azContext.Subscription.Id)?api-version=2020-01-01"
$response = Invoke-RestMethod -Uri $restUri -Method Get -Headers $authHeader

De variabele $response bevat het resultaat van de cmdlet Invoke-RestMethod, die kan worden geparseerd met cmdlets als ConvertFrom-Json. Als het service-eindpunt van REST API een Aanvraagbody verwacht, geeft u een met JSON geformatteerde variabele op in de parameter -Body van Invoke-RestMethod.

Uw eerste Resource Graph-query uitvoeren

Nu de REST API-hulpprogramma's zijn toegevoegd aan uw gewenste omgeving, is het tijd om een eenvoudige Resource Graph-query op basis van een abonnement uit te proberen. De query retourneert de eerste vijf Azure-resources met de naam en het resourcetype van elke resource. 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 de aanvraagbody van elke REST API-aanroep wordt een variabele gebruikt die u moet vervangen door uw eigen waarde:

  • Vervang {subscriptionID} door uw abonnements-ID
  1. Voer als volgt uw eerste Azure Resource Graph-query uit met de REST API en het eindpunt resources:

    • REST API-URI

      POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01
      
    • Aanvraagbody

      {
          "subscriptions": [
              "{subscriptionID}"
          ],
          "query": "Resources | project name, type | limit 5"
      }
      

    Notitie

    Omdat deze voorbeeldquery geen sorteermodificator geeft, bijvoorbeeld order by, zal deze query waarschijnlijk per aanvraag een andere set resources opleveren als de query meerdere keren wordt uitgevoerd.

  2. Werk de aanroep naar het eindpunt resouces bij en wijzig de query om order by de eigenschap Naam:

    • REST API-URI

      POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01
      
    • Aanvraagbody

      {
          "subscriptions": [
              "{subscriptionID}"
          ],
          "query": "Resources | project name, type | limit 5 | order by name asc"
      }
      

    Notitie

    Net als bij de eerste query zal deze query waarschijnlijk per aanvraag een andere set resources opleveren als de query meerdere keren wordt uitgevoerd. De volgorde van de queryopdrachten is belangrijk. In dit voorbeeld komt order by na limit. Met deze opdracht worden de queryresultaten eerst beperkt en vervolgens gerangschikt.

  3. Werk de aanroep naar het eindpunt resources bij en wijzig de query om eerst order by de eigenschap Naam en daarna limit de eerste vijf resultaten:

    • REST API-URI

      POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01
      
    • Aanvraagbody

      {
          "subscriptions": [
              "{subscriptionID}"
          ],
          "query": "Resources | project name, type | order by name asc | limit 5"
      }
      

Wanneer de laatste query meerdere keren wordt uitgevoerd, ervan uitgaande dat niets in uw omgeving verandert, zijn de geretourneerde resultaten consistent en gesorteerd op de eigenschap Naam, maar nog steeds beperkt tot de top vijf.

Zie de Azure Resource Graph REST-voorbeelden voor meer voorbeelden van REST API-aanroepen voor Azure resource Graph.

Resources opschonen

REST API heeft geen bibliotheken of modules die kunnen worden verwijderd. Als u een hulpprogramma zoals ARMClient hebt geïnstalleerd om de aanroepen uit te voeren en deze niet meer nodig hebt, kunt u het hulpprogramma nu verwijderen.

Volgende stappen

In deze quickstart hebt u het Resource Graph REST API-eindpunt aangeroepen en uw eerste query uitgevoerd. Ga verder naar de pagina met details van de querytaal voor meer informatie over de taal van Resource Graph.