Guida introduttiva: Eseguire una query di Resource Graph con Azure PowerShell

Questa guida introduttiva descrive come eseguire una query di Azure Resource Graph usando il Az.ResourceGraph modulo per Azure PowerShell. L'articolo illustra anche come ordinare (ordinare) e limitare i risultati della query. È possibile eseguire una query per le risorse nel tenant, nei gruppi di gestione o nelle sottoscrizioni. Al termine, è possibile rimuovere il modulo.

Prerequisiti

Installare il modulo

Installare il Az.ResourceGraph modulo in modo che sia possibile usare Azure PowerShell per eseguire query di Azure Resource Graph. Il modulo Azure Resource Graph richiede PowerShellGet versione 2.0.1 o successiva. Se sono state installate le versioni più recenti di PowerShell e Azure PowerShell, è già disponibile la versione necessaria.

  1. Verificare la versione di PowerShellGet:

    Get-Module -Name PowerShellGet
    

    Se è necessario eseguire l'aggiornamento, passare a PowerShellGet.

  2. Installare il modulo:

    Install-Module -Name Az.ResourceGraph -Repository PSGallery -Scope CurrentUser
    

    Il comando installa il modulo nell'ambito CurrentUser . Se è necessario installare nell'ambito AllUsers , eseguire l'installazione da una sessione amministrativa di PowerShell.

  3. Verificare che il modulo sia stato installato:

    Get-Command -Module Az.ResourceGraph -CommandType Cmdlet
    

    Il comando visualizza la versione del Search-AzGraph cmdlet e carica il modulo nella sessione di PowerShell.

Connect to Azure

Da una sessione del terminale di Visual Studio Code connettersi ad Azure. Se si dispone di più sottoscrizioni, eseguire i comandi per impostare il contesto sulla sottoscrizione. Sostituire <subscriptionID> con l'ID della sottoscrizione di Azure.

Connect-AzAccount

# Run these commands if you have multiple subscriptions
Get-AzSubScription
Set-AzContext -Subscription <subscriptionID>

Eseguire una query

Dopo aver aggiunto il modulo all'ambiente, è possibile eseguire una query basata su tenant. La query in questo esempio restituisce cinque risorse di Azure con name e type di ogni risorsa. Per eseguire query in base al gruppo di gestione o alla sottoscrizione, usare i -ManagementGroup parametri o -Subscription .

  1. Eseguire una query di Azure Resource Graph usando il Search-AzGraph cmdlet :

    Search-AzGraph -Query 'Resources | project name, type | limit 5'
    

    Questo esempio di query non usa un modificatore di ordinamento come order by. Se si esegue la query più volte, potrebbe restituire un set diverso di risorse per ogni richiesta.

  2. Aggiornare la query alla order byname proprietà :

    Search-AzGraph -Query 'Resources | project name, type | limit 5 | order by name asc'
    

    Analogamente alla query precedente, se si esegue questa query più volte potrebbe restituire un set diverso di risorse per ogni richiesta. L'ordine dei comandi della query è importante. In questo esempio order by segue limit. La query limita i risultati a cinque risorse e quindi ordina i risultati in base al nome.

  3. Aggiornare la query alla order byname proprietà e quindi limit l'output a cinque risultati:

    Search-AzGraph -Query 'Resources | project name, type | order by name asc | limit 5'
    

    Se questa query viene eseguita più volte senza modifiche all'ambiente, i risultati sono coerenti e ordinati in base alla name proprietà, ma sono comunque limitati a cinque risultati. La query ordina i risultati in base al nome e quindi limita l'output a cinque risorse.

Se una query non restituisce risultati da una sottoscrizione a cui si ha già accesso, si noti che Search-AzGraph per impostazione predefinita il cmdlet corrisponde alle sottoscrizioni nel contesto predefinito. Per visualizzare l'elenco degli ID sottoscrizione che fanno parte del contesto predefinito, eseguire questa (Get-AzContext).Account.ExtendedProperties.Subscriptions operazione Se si vuole cercare in tutte le sottoscrizioni a cui si ha accesso, impostare per Search-AzGraph il PSDefaultParameterValues cmdlet eseguendo$PSDefaultParameterValues=@{"Search-AzGraph:Subscription"= $(Get-AzSubscription).ID}

Pulire le risorse

Per rimuovere il Az.ResourceGraph modulo dalla sessione di PowerShell, eseguire il comando seguente:

Remove-Module -Name Az.ResourceGraph

Per disinstallare il Az.ResourceGraph modulo dal computer, eseguire il comando seguente:

Uninstall-Module -Name Az.ResourceGraph

Potrebbe essere visualizzato un messaggio che indica che il modulo Az.ResourceGraph è attualmente in uso. In questo caso, è necessario arrestare la sessione di PowerShell e avviare una nuova sessione. Eseguire quindi il comando per disinstallare il modulo dal computer.

Per disconnettersi dalla sessione di Azure PowerShell:

Disconnect-AzAccount

Passaggi successivi

In questa guida introduttiva è stato aggiunto il modulo Resource Graph all'ambiente Azure PowerShell ed è stata eseguita una query. Per altre informazioni, passare alla pagina dei dettagli del linguaggio di query.