Compartilhar via


Início Rápido: Executar uma consulta do Resource Graph usando a API REST

Este início rápido descreve como executar uma consulta do Azure Resource Graph com a API REST e exibir os resultados. Os elementos da API REST são um URI que inclui a versão da API e o corpo da solicitação que contém a consulta. Os exemplos usam a CLI do Azure para entrar no Azure e isso autentica sua conta para executar comandos az rest.

Se você não estiver familiarizado com a API REST, comece examinando a Referência de API REST do Azure para obter um entendimento geral sobre a API REST, especificamente o corpo da solicitação e o URI de solicitação. Para obter as especificações do Azure Resource Graph, confira API REST do Azure Resource Graph.

Pré-requisitos

Conectar-se ao Azure

Em uma sessão de terminal do Visual Studio Code, conecte-se ao Azure. Se você tiver mais de uma assinatura, execute os comandos para definir o contexto para sua assinatura. Substitua {subscriptionID} por sua ID da assinatura do Azure.

az login

# Run these commands if you have multiple subscriptions
az account list --output table
az account set --subscription {subscriptionID}

Use az login mesmo se você estiver usando o PowerShell porque os exemplos usam comandos az rest da CLI do Azure.

Revisar a sintaxe da API REST

Há dois elementos para executar comandos da API REST: o URI da API REST e o corpo da solicitação. Para obter informações, acesse Recursos. Para consultar por grupo de gerenciamento, use managementGroups em vez de subscriptions. Para consultar o locatário inteiro, omita as propriedades managementGroups e subscriptions do corpo da solicitação.

O exemplo a seguir mostra a sintaxe de URI da API REST para executar uma consulta para uma assinatura do Azure.

POST https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2022-10-01

Um corpo da solicitação é necessário para executar uma consulta com a API REST. O exemplo a seguir é o JSON para criar um arquivo de corpo da solicitação.

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

Executar consulta do Resource Graph

Os exemplos usam o mesmo comando az rest, mas é possível alterar o corpo da solicitação para obter resultados diferentes. Os exemplos listam recursos, ordenam recursos pela propriedade name, solicitam recursos pela propriedade name e limitam o número de resultados.

Para executar todos os exemplos de consulta, use o seguinte comando az rest para seu ambiente de shell:

az rest --method post --uri https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2022-10-01 --body `@request-body.json

No PowerShell, o acento grave (`) é necessário para escapar do at sign (@) e especificar um nome de arquivo para o corpo da solicitação.

Em cada exemplo do corpo da solicitação, substitua {subscriptionID} pela ID da assinatura do Azure. Execute o seguinte comando para obter sua ID de assinatura do Azure para o corpo da solicitação:

az account show --query id --output tsv

Listar recursos

No Visual Studio Code, crie um novo arquivo chamado request-body.json. Copie e cole o seguinte conteúdo JSON no arquivo e salve o arquivo.

A consulta retorna cinco recursos do Azure com os name e resource type de cada recurso.

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

Como essa consulta de exemplo não fornece um modificador de classificação, como order by, executar essa consulta várias vezes produz um conjunto diferente de recursos por solicitação.

Propriedade Order by name

Atualize request-body.json com o código a seguir que altera a consulta para order by a propriedade name. Salve o arquivo e use o comando az rest para executar a consulta.

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

Se você executar esta consulta várias vezes, isso gerará um conjunto diferente de recursos por solicitação.

A ordem dos comandos de consulta é importante. Neste exemplo, o order by vem após o limit. Essa ordem de comando limita os resultados da consulta a cinco recursos e os ordena.

Ordenar por propriedade de nome e limitar resultados

Atualize request-body.json com o código a seguir para order by a propriedade name e, em seguida, limit para os cinco principais resultados. Salve o arquivo e use o mesmo comando az rest para executar a consulta.

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

Se a consulta for executada várias vezes, supondo que nada em seu ambiente seja alterado, os resultados retornados serão consistentes e ordenados segundo a propriedade name, mas limitados aos cinco primeiros resultados.

Limpar os recursos

Sair da sessão da CLI do Azure.

az logout

Próximas etapas

Neste início rápido, você usou o ponto de extremidade da API REST do Azure Resource Graph para executar uma consulta. Para saber mais sobre a linguagem do Resource Graph, prossiga para a página de detalhes da linguagem de consulta.