Rychlý start: Spuštění prvního dotazu Resource Graphu pomocí rozhraní REST API

Prvním krokem k používání Azure Resource Graphu s rozhraním REST API je kontrola, že máte k dispozici nástroj pro volání rozhraní REST API. Tento rychlý start vás pak provede procesem spuštění dotazu a načtením výsledků voláním koncového bodu rozhraní REST API služby Azure Resource Graph.

Na konci tohoto procesu budete mít nástroje pro volání koncových bodů rozhraní REST API a spuštění prvního dotazu Resource Graphu.

Požadavky

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Azure Cloud Shell

Azure hostí interaktivní prostředí Azure Cloud Shell, které můžete používat v prohlížeči. Pro práci se službami Azure můžete v prostředí Cloud Shell použít buď Bash, nebo PowerShell. Předinstalované příkazy Cloud Shellu můžete použít ke spuštění kódu v tomto článku, aniž byste museli instalovat cokoli do místního prostředí.

Spuštění služby Azure Cloud Shell:

Možnost Příklad nebo odkaz
Vyberte Vyzkoušet v pravém horním rohu bloku kódu nebo příkazu. Výběrem možnosti Vyzkoušet se kód ani příkaz automaticky nekopíruje do Cloud Shellu. Screenshot that shows an example of Try It for Azure Cloud Shell.
Přejděte na adresu https://shell.azure.com nebo výběrem tlačítka Spustit Cloud Shell otevřete Cloud Shell v prohlížeči. Button to launch Azure Cloud Shell.
Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. Screenshot that shows the Cloud Shell button in the Azure portal

Použití Azure Cloud Shellu:

  1. Spusťte Cloud Shell.

  2. Výběrem tlačítka Kopírovat v bloku kódu (nebo bloku příkazů) zkopírujte kód nebo příkaz.

  3. Vložte kód nebo příkaz do relace Cloud Shellu tak, že ve Windows a Linuxu vyberete ctrl+Shift+V nebo vyberete Cmd+Shift+V v macOS.

  4. Stisknutím klávesy Enter spusťte kód nebo příkaz.

Začínáme s REST API

Pokud rozhraní REST API neznáte, nejprve si přečtěte referenční informace k rozhraní Azure REST API, kde najdete obecný přehled rozhraní REST API, zejména identifikátoru URI požadavku a textu požadavku. Tento článek používá tyto koncepty k poskytování pokynů pro práci s Azure Resource Graphem a předpokládá jejich pracovní znalosti. Začátečníkům se doporučuje používat k automatické autorizaci nástroje, jako je ARMClient a další.

Specifikace Azure Resource Graphu najdete v rozhraní REST API služby Azure Resource Graph.

REST API a PowerShell

Pokud nemáte nástroj na volání REST API, můžete k zadání těchto pokynů použít PowerShell. Následující ukázka kódu získá hlavičku pro ověřování v Azure. Vygenerujte ověřovací hlavičku, která je někdy označovaná jako nosný token, a zadejte identifikátor URI v REST API pro připojení s libovolnými parametry nebo text žádosti:

# 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

Proměnná $response obsahuje výsledek Invoke-RestMethod rutiny, kterou je možné analyzovat pomocí rutin, jako je ConvertFrom-Json. Pokud koncový bod služby REST API očekává text žádosti, zadejte do parametru -Body proměnnou Invoke-RestMethod ve formátu JSON.

Spusťte nejdříve dotaz na Resource Graph použitím Azure CLI

S nástroji REST API přidanými do zvoleného prostředí je čas vyzkoušet jednoduchý dotaz Resource Graph založený na předplatném. Dotaz vrátí prvních pět prostředků Azure s názvem a typem prostředku každého prostředku. Pokud chcete dotazovat podle skupiny pro správu, použijte managementgroups místo subscriptions. Pokud chcete dotazovat celého tenanta, v textu požadavku vynecháte vlastnosti managementgroups i subscriptions vlastnosti.

V textu požadavku každého volání rozhraní REST API je proměnná, která se používá k nahrazení vlastní hodnotou:

  • Proměnnou {subscriptionID} nahraďte ID předplatného.
  1. Spusťte první dotaz Azure Resource Graphu pomocí rozhraní REST API a koncového resources bodu:

    • Identifikátor URI v REST API

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

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

    Poznámka:

    Protože tento příklad dotazu neposkytuje modifikátor řazení, například order by, spuštění tohoto dotazu několikrát pravděpodobně přinese jinou sadu prostředků na požadavek.

  2. Aktualizujte volání koncového resouces bodu a změňte dotaz na order byvlastnost Name :

    • Identifikátor URI v REST API

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

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

    Poznámka:

    Stejně jako u prvního dotazu opakované spouštění tohoto dotazu pravděpodobně poskytne jinou sadu zdrojů na jednu žádost. Pořadí příkazů dotazů je důležité. V tomto příkladu order by přichází po limit. Toto pořadí příkazů nejprve omezuje výsledky dotazu a pak je objednává.

  3. Aktualizujte volání koncového resources bodu a změňte dotaz na první order byvlastnost Name a pak limit na prvních pět výsledků:

    • Identifikátor URI v REST API

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

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

Když se konečný dotaz spustí několikrát, za předpokladu, že se ve vašem prostředí nic nemění, vrácené výsledky jsou konzistentní a seřazené podle vlastnosti Name , ale stále jsou omezené na prvních pět výsledků.

Další příklady volání rozhraní REST API pro Azure Resource Graph najdete v příkladech rest služby Azure Resource Graph.

Vyčištění prostředků

Rozhraní REST API nemá žádné knihovny ani moduly k odinstalaci. Pokud jste nainstalovali nástroj, jako je ARMClient , aby mohl volat a už ho nepotřebujete, můžete nástroj odinstalovat.

Další kroky

V tomto rychlém startu jste volali koncový bod rozhraní REST API služby Resource Graph a spustili svůj první dotaz. Další informace o jazyce Resource Graph najdete na stránce podrobností dotazovacího jazyka.