Share via


Guia de início rápido: execute sua primeira consulta do Resource Graph usando a API REST

A primeira etapa para usar o Azure Resource Graph com a API REST é verificar se você tem uma ferramenta para chamar APIs REST disponível. Este guia de início rápido orienta você pelo processo de execução de uma consulta e recuperação dos resultados chamando o ponto de extremidade da API REST do Azure Resource Graph.

No final desse processo, você terá as ferramentas para chamar pontos de extremidade da API REST e executar sua primeira consulta do Gráfico de Recursos.

Pré-requisitos

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Button to launch Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou comando.

Introdução à API REST

Se não estiver familiarizado com a API REST, comece por rever a Referência da API REST do Azure para obter uma compreensão geral da API REST, especificamente o URI do pedido e o corpo do pedido. Este artigo usa esses conceitos para fornecer instruções para trabalhar com o Azure Resource Graph e pressupõe um conhecimento prático deles. Ferramentas como o ARMClient e outras podem processar a autorização automaticamente e são recomendadas para iniciantes.

Para obter as especificações do Azure Resource Graph, consulte Azure Resource Graph REST API.

API REST e PowerShell

Se ainda não tem uma ferramenta para fazer chamadas à API REST, considere utilizar o PowerShell para estas instruções. O exemplo de código a seguir obtém um cabeçalho para autenticação com o Azure. Gere um cabeçalho de autenticação, por vezes denominado Token de portador, e forneça o URI da API REST para ligar a parâmetros ou um Corpo do Pedido:

# 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

A $response variável contém o Invoke-RestMethod resultado do cmdlet, que pode ser analisado com cmdlets como ConvertFrom-Json. Se o ponto final de serviço da API REST esperar um Corpo do Pedido, forneça uma variável com o formato JSON para o parâmetro -Body de Invoke-RestMethod.

Executar a primeira consulta do Resource Graph

Com as ferramentas da API REST adicionadas ao seu ambiente de escolha, é hora de experimentar uma consulta simples do Resource Graph baseada em assinatura. A consulta retorna os cinco primeiros recursos do Azure com o Nome e o Tipo de Recurso de cada recurso. Para consultar por grupo de gerenciamento, use managementgroups em vez de subscriptions. Para consultar o locatário inteiro, omita as managementgroups propriedades e subscriptions do corpo da solicitação.

No corpo da solicitação de cada chamada de API REST, há uma variável usada que você precisa substituir pelo seu próprio valor:

  • {subscriptionID} - substituir pelo ID da subscrição
  1. Execute sua primeira consulta do Azure Resource Graph usando a API REST e o ponto de resources extremidade:

    • URI da API REST

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

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

    Nota

    Como este exemplo de consulta não fornece um modificador de classificação, como order by, é provável que a execução dessa consulta várias vezes produza um conjunto diferente de recursos por solicitação.

  2. Atualize a chamada para o resouces ponto de extremidade e altere a consulta para order by a propriedade Name :

    • URI da API REST

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

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

    Nota

    Assim como na primeira consulta, é provável que executar esta consulta várias vezes produza um conjunto diferente de recursos em cada pedido. A ordem dos comandos da consulta é importante. Neste exemplo, order by vem depois de limit, Essa ordem de comando primeiro limita os resultados da consulta e, em seguida, ordena-os.

  3. Atualize a chamada para o resources ponto de extremidade e altere a consulta para primeiro order by a propriedade Name e, em seguida, limit para os cinco principais resultados:

    • URI da API REST

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

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

Quando a consulta final é executada várias vezes, supondo que nada em seu ambiente esteja mudando, os resultados retornados são consistentes e ordenados pela propriedade Name , mas ainda limitados aos cinco principais resultados.

Para obter mais exemplos de chamadas de API REST para o Azure Resource Graph, consulte os Exemplos REST do Azure Resource Graph.

Clean up resources (Limpar recursos)

A API REST não tem bibliotecas ou módulos para desinstalar. Se você instalou uma ferramenta como ARMClient para fazer as chamadas e não precisa mais dela, você pode desinstalar a ferramenta agora.

Próximos passos

Neste início rápido, você chamou o ponto de extremidade da API REST do Resource Graph e executou sua primeira consulta. Para saber mais sobre a linguagem do Gráfico de Recursos, continue para a página de detalhes do idioma da consulta.