Partager via


Démarrage rapide : Exécuter votre première requête Resource Graph à l’aide de l’API REST

La première étape de l’utilisation d’Azure Resource Graph avec l’API REST consiste à vérifier que vous disposez d’un outil permettant d’appeler les API REST disponibles. Ce guide de démarrage rapide vous accompagne ensuite tout au long du processus d’exécution d’une requête et de récupération des résultats en appelant le point de terminaison d’API REST Azure Resource Graph.

À la fin de ce processus, vous disposerez des outils permettant d’appeler les points de terminaison d’API REST et d’exécuter votre première requête Resource Graph.

Prérequis

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

Azure Cloud Shell

Azure héberge Azure Cloud Shell, un environnement d’interpréteur de commandes interactif que vous pouvez utiliser dans votre navigateur. Vous pouvez utiliser Bash ou PowerShell avec Cloud Shell pour utiliser les services Azure. Vous pouvez utiliser les commandes préinstallées Cloud Shell pour exécuter le code de cet article sans avoir à installer quoi que ce soit dans votre environnement local.

Pour démarrer Azure Cloud Shell :

Option Exemple/Lien
Sélectionnez Essayer dans le coin supérieur droite d’un bloc de codes ou de commandes. La sélection de Essayer ne copie pas automatiquement le code ni la commande dans Cloud Shell. Capture d’écran présentant un exemple d’essai pour Azure Cloud Shell.
Accédez à https://shell.azure.com ou sélectionnez le bouton Lancer Cloud Shell pour ouvrir Cloud Shell dans votre navigateur. Bouton permettant de lancer Azure Cloud Shell.
Sélectionnez le bouton Cloud Shell dans la barre de menus en haut à droite du portail Azure. Capture d’écran présentant le bouton Cloud Shell dans le portail Azure.

Pour utiliser Azure Cloud Shell :

  1. Démarrez Cloud Shell.

  2. Sélectionnez le bouton Copier sur un bloc de codes (ou un bloc de commandes) pour copier le code ou la commande.

  3. Collez le code ou la commande dans la session Cloud Shell en sélectionnant Ctrl+Maj+V sur Windows et Linux ou en sélectionnant Cmd+Maj+V sur macOS.

  4. Sélectionnez Entrée pour exécuter le code ou la commande.

Bien démarrer avec l’API REST

Si vous ne connaissez pas bien l’API REST, commencez par passer en revue Référence de l’API REST Azure pour obtenir des informations générales sur l’API REST, en particulier sur l’URI de requête et le corps de la requête. Cet article utilise ces concepts pour fournir des instructions sur l’utilisation d’Azure Resource Graph et suppose une connaissance pratique de ce dernier. Des outils comme ARMClient qui peuvent gérer l’autorisation automatiquement sont recommandés pour les débutants.

Pour connaître les spécifications d’Azure Resource Graph, consultez API REST Azure Resource Graph.

API REST et PowerShell

Si vous n’avez pas encore d’outil pour effectuer des appels d’API REST, songez à utiliser PowerShell pour ces instructions. L’exemple de code suivant obtient un en-tête pour l’authentification auprès d’Azure. Générez un en-tête d’authentification, parfois appelé jeton du porteur, puis indiquez l’URI d’API REST auquel se connecter avec un paramètre ou un corps de demande :

# 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

La variable $response contient le résultat de l’applet de commande Invoke-RestMethod que vous pouvez analyser avec des applets de commande telles que ConvertFrom-Json. Si le point de terminaison de service de l’API REST attend un corps de demande, fournissez une variable au format JSON au paramètre -Body de Invoke-RestMethod.

Exécuter votre première requête Resource Graph

Une fois les outils d’API REST ajoutées à l’environnement de votre choix, vous pouvez exécuter une requête Resource Graph simple basée sur un abonnement. La requête retourne les cinq premières ressources Azure avec le nom (Name) et le Type de chaque ressource. Pour effectuer une requête par groupe d’administration, utilisez managementgroups au lieu de subscriptions. Pour interroger l'ensemble du locataire, omettez les propriétés managementgroups et subscriptions dans le corps de la requête.

Le corps de la demande de chaque appel d’API REST contient une variable que vous devez remplacer par votre propre valeur :

  • Remplacer {subscriptionID} par votre ID d’abonnement
  1. Exécutez votre première requête Azure Resource Graph à l’aide de l’API REST et du point de terminaison resources :

    • URI de l’API REST

      POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01
      
    • Corps de la requête

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

    Notes

    Comme cet exemple de requête ne fournit pas de modificateur de tri tel que order by, l’exécution répétée de cette requête peut produire un ensemble distinct de ressources par requête.

  2. Mettez à jour l’appel au point de terminaison resouces et changez la requête afin qu’elle effectue un tri (order by) en fonction de la propriété name :

    • URI de l’API REST

      POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01
      
    • Corps de la requête

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

    Notes

    Comme précédemment, l’exécution répétée de cette requête peut produire un ensemble différent de ressources. L’ordre des commandes de requête est important. Dans cet exemple, order by vient après limit. Cet ordre de commande limite d’abord les résultats de la requête, puis les classe.

  3. Mettez à jour l’appel au point de terminaison resources et changez la requête pour qu’elle effectue un tri (order by) en fonction de la propriété name, puis qu’elle limite (limit) les données récupérées aux cinq premiers résultats :

    • URI de l’API REST

      POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01
      
    • Corps de la requête

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

Si votre environnement ne change pas et si vous exécutez plusieurs fois la requête finale, les résultats retournés sont cohérents et classés en fonction de la propriété Name, mais toujours limités aux cinq premiers.

Pour obtenir plus d’exemples d’appels d’API REST pour Azure Resource Graph, consultez les exemples REST Azure Resource Graph.

Nettoyer les ressources

L’API REST n’a pas de bibliothèques ou de modules à désinstaller. Si vous avez installé un outil tel que ARMClient pour effectuer les appels et qu’il n’en a plus besoin, vous pouvez désinstaller l’outil maintenant.

Étapes suivantes

Dans ce guide de démarrage rapide, vous avez appelé le point de terminaison de l’API REST Resource Graph et exécuté votre première requête. Pour plus d’informations sur le langage Resource Graph, passez à la page des détails du langage de requête.