Puoi cercare risorse in un progetto, una cartella o un'organizzazione e filtrare i risultati restituiti utilizzando una query.
Prima di iniziare
Abilita l'API Cloud Asset Inventory nel progetto da cui esegui i comandi Cloud Asset Inventory.
Assicurati che il tuo account disponga del ruolo corretto per chiamare l'API Cloud Asset Inventory. Per le singole autorizzazioni per ogni tipo di chiamata, vedi Autorizzazioni.
Costruire una query
Prima di creare una query, può essere utile iniziare con una richiesta di ricerca che non specifichi una query. Utilizza i campi e i valori della risposta completa per creare una query utilizzando la sintassi della query di ricerca e perfezionala finché non vengono restituiti i risultati che ti interessano.
I campi che possono essere utilizzati in una query sono descritti in dettaglio nella documentazione di riferimento searchAllResources.
Non è possibile eseguire ricerche in tutte le risorse. Consulta la sezione Tipi di risorse per i nomi delle risorse e per verificare se sono disponibili per le API di ricerca.
Cercare le risorse
Console
Per cercare i metadati delle risorse, completa i seguenti passaggi.
-
Vai alla pagina Asset Inventory nella console Google Cloud .
- Passa al progetto, alla cartella o all'organizzazione in cui vuoi eseguire la ricerca.
- Fai clic sulla scheda Risorsa.
-
Per cercare risorse, inserisci una query nel campo Filtro. Consulta Sintassi delle query di ricerca per scoprire come scrivere una query di ricerca.
Per semplificare la creazione delle query, puoi fare clic sul campo Filtro per visualizzare e aggiungere i campi disponibili per la ricerca alla tua query.
Dopo aver eseguito una ricerca, le risorse corrispondenti alla query vengono elencate nella tabella Risultati. Fai doppio clic sulla query per modificarla oppure utilizza il riquadro Filtra risultati per limitare i risultati di ricerca in base a criteri specifici.
Per visualizzare la query come comando Google Cloud CLI, fai clic su Visualizza query.
Per esportare i risultati, fai clic su Scarica CSV.
gcloud
gcloud asset search-all-resources \ --scope=SCOPE_PATH \ --query="QUERY" \ --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \ --order-by="ORDER_BY" \ --read-mask="READ_MASK"
Fornisci i seguenti valori:
-
SCOPE_PATH
: utilizza uno dei seguenti valori:I valori consentiti sono:
-
projects/PROJECT_ID
, dovePROJECT_ID
è l'ID del progetto che contiene gli asset che vuoi cercare. -
projects/PROJECT_NUMBER
, dovePROJECT_NUMBER
è il numero del progetto che contiene gli asset che vuoi cercare.Come trovare un Google Cloud numero di progetto
ConsoleGoogle Cloud
Per trovare un numero di progetto, completa i seguenti passaggi: Google Cloud
-
Vai alla pagina Benvenuto nella console Google Cloud .
- Fai clic sulla casella di elenco selettore nella barra dei menu.
-
Seleziona la tua organizzazione dalla casella di elenco, quindi cerca il nome del tuo progetto. Il nome, il numero e l'ID progetto vengono visualizzati vicino all'intestazione Benvenuto.
Vengono visualizzate fino a 4000 risorse. Se non vedi il progetto che stai cercando, vai alla pagina Gestisci risorse e filtra l'elenco utilizzando il nome del progetto.
Interfaccia a riga di comando gcloud
Puoi recuperare un Google Cloud numero di progetto con il seguente comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
-
folders/FOLDER_ID
, doveFOLDER_ID
è l'ID della cartella che contiene gli asset che vuoi cercare.Come trovare l'ID di una Google Cloud cartella
ConsoleGoogle Cloud
Per trovare l'ID di una Google Cloud cartella:
-
Vai alla Google Cloud console.
- Fai clic sulla casella di elenco selettore nella barra dei menu.
- Seleziona la tua organizzazione dalla casella di elenco.
- Cerca il nome della cartella. L'ID cartella viene visualizzato accanto al nome della cartella.
Interfaccia a riga di comando gcloud
Puoi recuperare l'ID di una cartella Google Cloud che si trova a livello di organizzazione con il seguente comando:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
dove TOP_LEVEL_FOLDER_NAME è una corrispondenza parziale o completa della stringa per il nome della cartella. Rimuovi il flag
--format
per visualizzare ulteriori informazioni sulle cartelle trovate.Il comando precedente non restituisce gli ID delle sottocartelle all'interno delle cartelle. Per farlo, esegui il comando seguente utilizzando l'ID di una cartella di primo livello:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organizations/ORGANIZATION_ID
, doveORGANIZATION_ID
è l'ID dell'organizzazione che contiene gli asset che vuoi cercare.Come trovare l'ID di un' Google Cloud organizzazione
ConsoleGoogle Cloud
Per trovare l'ID di un' Google Cloud organizzazione:
-
Vai alla Google Cloud console.
- Fai clic sulla casella di elenco selettore nella barra dei menu.
- Seleziona la tua organizzazione dalla casella di elenco.
- Fai clic sulla scheda Tutti. L'ID organizzazione viene visualizzato accanto al nome dell'organizzazione.
Interfaccia a riga di comando gcloud
Puoi recuperare l'ID di un'organizzazione Google Cloud con il seguente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
-
QUERY
: (Facoltativo). L'espressione di query. Se non specificato o vuoto, tutte le risorse vengono cercate nell'ambito specificato. Per scoprire come scrivere una query di ricerca, consulta Sintassi delle query di ricerca. ASSET_TYPE_#
: (Facoltativo). Un elenco separato da virgole di tipi di asset ricercabili. Sono supportate le espressioni regolari compatibili con RE2. Se l'espressione regolare non corrisponde a nessun tipo di asset supportato, viene restituito un erroreINVALID_ARGUMENT
. Quando--asset-types
non è specificato, vengono restituiti tutti i tipi di asset.-
ORDER_BY
: (Facoltativo). Un elenco di campi separati da virgole che specificano l'ordine di ordinamento dei risultati. L'ordine predefinito è crescente. AggiungiDESC
dopo il nome del campo per indicare l'ordine decrescente. Consulta la documentazione di riferimento per scoprire quali campi possono essere ordinati. READ_MASK
: (Facoltativo). Un elenco di campi separati da virgole che specificano quali campi devono essere restituiti nei risultati. Consulta la sezione per i campi restituiti per impostazione predefinita e altre condizioni da tenere presente quando specifichi una maschera di lettura.
Puoi utilizzare i flag --format
e
--flatten
per formattare l'output
di gcloud CLI.
Per tutte le opzioni, consulta il riferimento gcloud CLI.
Esempio
Esegui il comando seguente per ottenere un elenco di tutte le istanze Compute Engine nel progetto my-project
con la parola instance
seguita da 1
nel nome della risorsa completo. I risultati sono in
ordine decrescente per nome e, a causa della maschera di lettura, vengono restituiti solo i campi name
e
location
.
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="name:instance 1" \ --asset-types=compute.googleapis.com/Instance \ --order-by="name DESC" \ --read-mask="name,location"
Esempio di risposta
--- location: us-central1-a name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-2-1 --- location: us-central1-a name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:searchAllResources
Corpo JSON della richiesta:
{ "query": "QUERY", "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "orderBy": "ORDER_BY", "pageSize": "PAGE_SIZE", "pageToken": "PAGE_TOKEN", "readMask": "READ_MASK" }
Fornisci i seguenti valori:
-
SCOPE_PATH
: utilizza uno dei seguenti valori:I valori consentiti sono:
-
projects/PROJECT_ID
, dovePROJECT_ID
è l'ID del progetto che contiene gli asset che vuoi cercare. -
projects/PROJECT_NUMBER
, dovePROJECT_NUMBER
è il numero del progetto che contiene gli asset che vuoi cercare.Come trovare un Google Cloud numero di progetto
ConsoleGoogle Cloud
Per trovare un numero di progetto, completa i seguenti passaggi: Google Cloud
-
Vai alla pagina Benvenuto nella console Google Cloud .
- Fai clic sulla casella di elenco selettore nella barra dei menu.
-
Seleziona la tua organizzazione dalla casella di elenco, quindi cerca il nome del tuo progetto. Il nome, il numero e l'ID progetto vengono visualizzati vicino all'intestazione Benvenuto.
Vengono visualizzate fino a 4000 risorse. Se non vedi il progetto che stai cercando, vai alla pagina Gestisci risorse e filtra l'elenco utilizzando il nome del progetto.
Interfaccia a riga di comando gcloud
Puoi recuperare un Google Cloud numero di progetto con il seguente comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
-
folders/FOLDER_ID
, doveFOLDER_ID
è l'ID della cartella che contiene gli asset che vuoi cercare.Come trovare l'ID di una Google Cloud cartella
ConsoleGoogle Cloud
Per trovare l'ID di una Google Cloud cartella:
-
Vai alla Google Cloud console.
- Fai clic sulla casella di elenco selettore nella barra dei menu.
- Seleziona la tua organizzazione dalla casella di elenco.
- Cerca il nome della cartella. L'ID cartella viene visualizzato accanto al nome della cartella.
Interfaccia a riga di comando gcloud
Puoi recuperare l'ID di una cartella Google Cloud che si trova a livello di organizzazione con il seguente comando:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
dove TOP_LEVEL_FOLDER_NAME è una corrispondenza parziale o completa della stringa per il nome della cartella. Rimuovi il flag
--format
per visualizzare ulteriori informazioni sulle cartelle trovate.Il comando precedente non restituisce gli ID delle sottocartelle all'interno delle cartelle. Per farlo, esegui il comando seguente utilizzando l'ID di una cartella di primo livello:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organizations/ORGANIZATION_ID
, doveORGANIZATION_ID
è l'ID dell'organizzazione che contiene gli asset che vuoi cercare.Come trovare l'ID di un' Google Cloud organizzazione
ConsoleGoogle Cloud
Per trovare l'ID di un' Google Cloud organizzazione:
-
Vai alla Google Cloud console.
- Fai clic sulla casella di elenco selettore nella barra dei menu.
- Seleziona la tua organizzazione dalla casella di elenco.
- Fai clic sulla scheda Tutti. L'ID organizzazione viene visualizzato accanto al nome dell'organizzazione.
Interfaccia a riga di comando gcloud
Puoi recuperare l'ID di un'organizzazione Google Cloud con il seguente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
-
QUERY
: (Facoltativo). L'espressione di query. Se non specificato o vuoto, tutte le risorse vengono cercate nell'ambito specificato. Per scoprire come scrivere una query di ricerca, consulta Sintassi delle query di ricerca. ASSET_TYPE_#
: (Facoltativo). Un array di tipi di asset ricercabili. Sono supportate le espressioni regolari compatibili con RE2. Se l'espressione regolare non corrisponde a nessun tipo di asset supportato, viene restituito un erroreINVALID_ARGUMENT
. QuandoassetTypes
non è specificato, vengono restituiti tutti i tipi di asset.-
ORDER_BY
: (Facoltativo). Un elenco di campi separati da virgole che specificano l'ordine di ordinamento dei risultati. L'ordine predefinito è crescente. AggiungiDESC
dopo il nome del campo per indicare l'ordine decrescente. Consulta la documentazione di riferimento per scoprire quali campi possono essere ordinati. -
PAGE_SIZE
: (Facoltativo). Il numero di risultati da restituire per pagina. Il massimo è 500. Se il valore è impostato su0
o su un valore negativo, viene selezionato un valore predefinito appropriato. Viene restituito unnextPageToken
per recuperare i risultati successivi. -
PAGE_TOKEN
: (Facoltativo). Le risposte alle richieste lunghe sono separate su più pagine. SepageToken
non è specificato, viene restituita la prima pagina. Le pagine successive possono essere chiamate utilizzandonextPageToken
della risposta precedente come valore dipageToken
. READ_MASK
: (Facoltativo). Un elenco di campi separati da virgole che specificano quali campi devono essere restituiti nei risultati. Consulta la sezione per i campi restituiti per impostazione predefinita e altre condizioni da tenere presente quando specifichi una maschera di lettura.
Consulta il riferimento REST per tutte le opzioni.
Esempi di comandi
Esegui uno dei seguenti comandi per ottenere un elenco di tutte le istanze Compute Engine nel progetto my-project
con la parola instance
seguita da 1
nel nome risorsa completo. I risultati sono in
ordine decrescente per nome e vengono restituiti solo i campi name
e location
.
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "query": "name:instance 1", "assetTypes": ["compute.googleapis.com/Instance"], "orderBy": "name DESC", "readMask": "name,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "query": "name:instance 1", "assetTypes": ["compute.googleapis.com/Instance"], "orderBy": "name DESC", "readMask": "name,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Esempio di risposta
{ "results": [ { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-2-1", "location": "us-central1-a" }, { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1", "location": "us-central1-a" } ] }
C#
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti in Cloud Asset Inventory, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Vai
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti in Cloud Asset Inventory, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti in Cloud Asset Inventory, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti in Cloud Asset Inventory, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
PHP
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti in Cloud Asset Inventory, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti in Cloud Asset Inventory, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti in Cloud Asset Inventory, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Altri esempi di ricerca
Gli esempi di codice riportati di seguito mostrano query di ricerca specifiche per gcloud e REST per aiutarti a creare le tue ricerche.
Tutte le risorse in un progetto
L'esempio riportato di seguito mostra come cercare tutte le risorse nel progetto my-project
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --format="table(assetType.basename(), name.basename(), name.scope(projects).segment(0):label=PROJECT_ID, labels)"
REST
Metodo HTTP e URL:
GET https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Istanze Compute Engine per descrizione
Il seguente esempio mostra come cercare le istanze Compute Engine nel progetto my-project
con il nome esatto instance-prod
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="description=instance-prod" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Per cercare istanze che contengono instance-prod
nel nome (ad esempio
instance-prod-1
e instance-prod-2
) anziché una corrispondenza esatta, sostituisci
=instance-prod
con :instance-prod
.
Istanze Compute Engine per etichetta
L'esempio seguente mostra come cercare le istanze Compute Engine nel progetto my-project
con un'etichetta denominata env
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="labels.env:*" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, labels)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Istanze Compute Engine per TagKey
Il seguente esempio mostra come cercare le istanze Compute Engine nel progetto my-project
a cui sono collegati direttamente tag con un valore TagKey
.namespacedName
contenente env
.
Per eseguire la ricerca in base alle TagKey effettive, sostituisci tagKeys
con
effectiveTagKeys
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="tagKeys:env" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, tags)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Istanze Compute Engine per TagValue
Il seguente esempio mostra come cercare le istanze Compute Engine nel progetto my-project
che hanno tag collegati direttamente in cui TagValue
.namespacedName
contiene prod
o sea
e il nome dell'istanza non contiene instance1
.
Per eseguire la ricerca in base ai valori TagValues effettivi, sostituisci tagValues
con
effectiveTagValues
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="tagValues:(prod OR sea) (NOT name:instance1)" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, tags)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Istanze Compute Engine create dopo un orario specifico
L'esempio seguente mostra come cercare le istanze Compute Engine nel progetto my-project
create dopo il 31 dicembre 2023.
Per ulteriori informazioni sui confronti tra date e ore, vedi Confronto numerico e dei timestamp.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="createTime>2023-31-12" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Istanze Compute Engine situate negli Stati Uniti
L'esempio seguente mostra come cercare le istanze Compute Engine nel progetto my-project
che si trovano negli Stati Uniti.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="location:us-*" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Istanze Compute Engine in esecuzione
L'esempio seguente mostra come cercare le istanze Compute Engine in esecuzione nel progetto my-project
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="state=RUNNING" \ --asset-types=compute.googleapis.com/Instance \ --read-mask="name,assetType,location,versionedResources" \ --format="table(name, assetType, location, versionedResources)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Criteri di negazione IAM
L'esempio seguente mostra come cercare le
policy di negazione IAM nel progetto
my-project
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --asset-types=iam.googleapis.com/PolicyV2 \ --query="name:denypolicies"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "assetTypes": "iam.googleapis.com/PolicyV2", "pageSize": 1, "query": "name:denypolicies" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "iam.googleapis.com/PolicyV2", "pageSize": 1, "query": "name:denypolicies" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "iam.googleapis.com/PolicyV2", "pageSize": 1, "query": "name:denypolicies" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Per cercare le istanze Compute Engine che non sono in esecuzione, sostituisci
state=RUNNING
con NOT state:running
.
Risorse Google Cloud correlate
Le query sulle relazioni richiedono l'accesso al livello Premium o Enterprise di Security Command Center o a Gemini Cloud Assist.
L'esempio seguente mostra come cercare le risorse correlate nel progetto my-project
per i tipi di relazione supportati. Ad esempio,
cerca tutte le istanze Compute Engine che fanno parte di
gruppi di istanze che hanno instance-group
nei
loro nomi completi delle risorse.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="relationships:instance-group" \ --format="table(name, assetType, relationships)"
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Corpo JSON della richiesta:
{ "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" }
Esempi di comandi
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Puoi anche specificare il tipo di relazione che vuoi cercare. Ad esempio, per cercare il tipo di relazione INSTANCE_TO_INSTANCEGROUP
, utilizza la query relationships.INSTANCE_TO_INSTANCEGROUP
. Per cercare questo tipo di relazione con un nome completo della risorsa che contiene instance-group
, utilizza la query relationships.INSTANCE_TO_INSTANCEGROUP:instance-group
.