Puoi recuperare fino a 35 giorni di cronologia di creazione, aggiornamento ed eliminazione delle risorse in Google Cloud progetti o organizzazioni. Gli asset che non sono stati modificati negli ultimi 35 giorni riportano il loro stato più recente.
Prima di iniziare
Abilita l'API Cloud Asset Inventory nel progetto da cui stai eseguendo i comandi di 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, consulta Autorizzazioni.
Limitazioni
Puoi recuperare la cronologia delle risorse solo a livello di organizzazione e progetto. Le cartelle non sono supportate.
Recuperare le cronologie delle risorse
Console
Per visualizzare la cronologia delle risorse archiviate in Google Cloud, completa i seguenti passaggi.
-
Vai alla pagina Inventario asset nella console Google Cloud.
- Passa al progetto, alla cartella o all'organizzazione in cui vuoi eseguire la ricerca.
- Fai clic sulla scheda Risorsa.
- Fai clic su una risorsa nel riquadro dei risultati.
- Fai clic sulla scheda Cronologia delle modifiche.
- Seleziona un'ora di inizio e un'ora di fine per il report.
- Utilizza le caselle di elenco Seleziona un record da confrontare per mostrare la differenza tra i record relativi alle date selezionate.
Dopo aver eseguito una ricerca, le risorse corrispondenti alla query vengono elencate nella tabella Risultati. Fai doppio clic sulla query per modificarla o 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 get-history \ --SCOPE \ --asset-names=ASSET_NAME_1,ASSET_NAME_2,... \ --content-type=CONTENT_TYPE \ --relationship-types=RELATIONSHIP_TYPE_1,RELATIONSHIP_TYPE_2,... \ --start-time="START_TIME" \ --end-time="END_TIME"
Fornisci i seguenti valori:
-
SCOPE
: utilizza uno dei seguenti valori:-
project=PROJECT_ID
, dovePROJECT_ID
è l'ID del progetto che contiene la risorsa che vuoi recuperare. -
organization=ORGANIZATION_ID
, doveORGANIZATION_ID
è l'ID dell'organizzazione che ha la risorsa che vuoi recuperare.Come trovare l'ID di un' Google Cloud organizzazione
Console Google Cloud
Per trovare l'ID di un' Google Cloud organizzazione, segui questi passaggi:
-
Vai alla console Google Cloud.
- 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' Google Cloud organizzazione con il seguente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
ASSET_NAME_#
: un elenco separato da virgole di nomi completi delle risorse.CONTENT_TYPE
: il tipo di contenuto dei metadati che vuoi recuperare. Se--content-type
non è specificato, vengono restituite solo informazioni di base, ad esempio i nomi degli asset, l'ultima volta che gli asset sono stati aggiornati e a quali progetti, cartelle e organizzazioni appartengono.-
RELATIONSHIP_TYPE_#
: facoltativo. Richiede l'accesso al livello Premium o Enterprise di Security Command Center o Gemini Cloud Assist. Un elenco separato da virgole di tipi di relazioni tra asset che vuoi recuperare. Affinché la procedura funzioni, devi impostareCONTENT_TYPE
suRELATIONSHIP
. -
START_TIME
: l'inizio dell'intervallo di tempo, nel formato data e ora di gcloud topic. Il valore non deve risalire a più di 35 giorni fa. -
END_TIME
: facoltativo. Il punto di fine dell'intervallo di tempo, nel formato data e ora dell'argomento gcloud. Il valore non deve risalire a più di 35 giorni fa. Se--end-time
non è specificato, viene impostato sull'ora corrente.
Consulta il riferimento all'interfaccia a riga di comando gcloud per tutte le opzioni.
Esempio
Esegui il seguente comando per recuperare i metadati della cronologia resource
dell'istanza Compute Engine my-instance
nel progetto my-project
tra il 30 gennaio 2024 e il 5 febbraio 2024. L'istanza ha le seguenti proprietà:
- Nome istanza:
my-instance
- Progetto:
my-project
- Località:
us-central1-a
gcloud asset get-history \ --project=my-project \ --asset-names=//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance \ --content-type=resource \ --start-time="2024-01-30" \ --end-time="2024-02-05"
Risposta di esempio
--- asset: ancestors: - projects/000000000000 - folders/000000000000 - organizations/000000000000 assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance resource: data: LATEST_ASSET_METADATA discoveryDocumentUri: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest discoveryName: Instance location: us-central1-a parent: //cloudresourcemanager.googleapis.com/projects/000000000000 version: v1 updateTime: '2024-02-05T16:00:25.259186Z' window: endTime: '2024-02-05T16:00:25.259186Z' startTime: '2024-02-03T16:00:28.854779Z' --- asset: ancestors: - projects/000000000000 - folders/000000000000 - organizations/000000000000 assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance resource: data: EARLIEST_ASSET_METADATA discoveryDocumentUri: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest discoveryName: Instance location: us-central1-a parent: //cloudresourcemanager.googleapis.com/projects/000000000000 version: v1 updateTime: '2024-02-03T16:00:28.854779Z' window: endTime: '2024-02-03T16:00:28.854779Z' startTime: '2024-01-30T08:00:22.930462Z'
REST
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:batchGetAssetsHistory
Corpo JSON della richiesta:
{ "assetNames": [ "ASSET_NAME_1", "ASSET_NAME_2", "..." ], "contentType": "CONTENT_TYPE", "relationshipTypes": [ "RELATIONSHIP_TYPE_1", "RELATIONSHIP_TYPE_2", "..." ], "readTimeWindow": { "startTime": "START_TIME", "endTime": "END_TIME" } }
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 la risorsa che vuoi recuperare. -
projects/PROJECT_NUMBER
, dovePROJECT_NUMBER
è il numero del progetto che contiene la risorsa che vuoi recuperare.Come trovare un Google Cloud numero di progetto
Console Google Cloud
Per trovare un Google Cloud numero di progetto, completa i seguenti passaggi:
-
Vai alla pagina Ti diamo il 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 progetto. Il nome, il numero e l'ID progetto vengono visualizzati accanto all'intestazione Ti diamo il 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)"
-
-
organizations/ORGANIZATION_ID
, doveORGANIZATION_ID
è l'ID dell'organizzazione che ha la risorsa che vuoi recuperare.Come trovare l'ID di un' Google Cloud organizzazione
Console Google Cloud
Per trovare l'ID di un' Google Cloud organizzazione, segui questi passaggi:
-
Vai alla console Google Cloud.
- 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' Google Cloud organizzazione con il seguente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
ASSET_NAME_#
: un array di nomi completi delle risorse.CONTENT_TYPE
: il tipo di contenuto dei metadati che vuoi recuperare. Se non viene specificatocontentType
, vengono restituite solo informazioni di base, ad esempio i nomi degli asset, l'ultima volta che gli asset sono stati aggiornati e a quali progetti, cartelle e organizzazioni appartengono.-
RELATIONSHIP_TYPE_#
: facoltativo. Richiede l'accesso al livello Premium o Enterprise di Security Command Center o Gemini Cloud Assist. Un elenco separato da virgole di tipi di relazioni tra asset che vuoi recuperare. Affinché la procedura funzioni, devi impostareCONTENT_TYPE
suRELATIONSHIP
. -
START_TIME
: l'inizio dell'intervallo di tempo, in formato RFC 3339. Il valore non deve risalire a più di 35 giorni fa. -
END_TIME
: facoltativo. Il punto di fine dell'intervallo di tempo, nel formato RFC 3339. Il valore non deve risalire a più di 35 giorni fa. SeendTime
non è specificato, viene impostato sull'ora corrente.
Consulta il riferimento REST per tutte le opzioni.
Esempi di comandi
Esegui uno dei seguenti comandi per ottenere la cronologia resource
dell'istanza Compute Engine my-instance
nel progetto my-project
tra il 30 gennaio 2024 e il 5 febbraio 2024. L'istanza ha le seguenti proprietà:
- Nome istanza:
my-instance
- Progetto:
my-project
- Località:
us-central1-a
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 '{ "assetNames": ["//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance"], "contentType": "RESOURCE", "readTimeWindow": { "startTime": "2024-01-30T00:00:00Z", "endTime": "2024-02-05T00:00:00Z" } }' \ https://cloudasset.googleapis.com/v1/projects/my-project:batchGetAssetsHistory
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetNames": ["//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance"], "contentType": "RESOURCE", "readTimeWindow": { "startTime": "2024-01-30T00:00:00Z", "endTime": "2024-02-05T00:00:00Z" } } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:batchGetAssetsHistory" | Select-Object -Expand Content
Risposta di esempio
{ "assets": [ { "window": { "startTime": "2024-02-03T16:00:28.854779Z", "endTime": "2024-02-05T16:00:25.259186Z" }, "asset": { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance", "assetType": "compute.googleapis.com/Instance", "resource": { "version": "v1", "discoveryDocumentUri": "https://www.googleapis.com/discovery/v1/apis/compute/v1/rest", "discoveryName": "Instance", "parent": "//cloudresourcemanager.googleapis.com/projects/000000000000", "data": { LATEST_ASSET_METADATA }, "location": "us-central1-a" }, "ancestors": [ "projects/000000000000", "folders/000000000000", "organizations/000000000000" ], "updateTime": "2024-02-05T16:00:25.259186Z" } }, { "window": { "startTime": "2024-01-30T08:00:22.930462Z", "endTime": "2024-02-03T16:00:28.854779Z" }, "asset": { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance", "assetType": "compute.googleapis.com/Instance", "resource": { "version": "v1", "discoveryDocumentUri": "https://www.googleapis.com/discovery/v1/apis/compute/v1/rest", "discoveryName": "Instance", "parent": "//cloudresourcemanager.googleapis.com/projects/000000000000", "data": { EARLIEST_ASSET_METADATA }, "location": "us-central1-a" }, "ancestors": [ "projects/000000000000", "folders/000000000000", "organizations/000000000000" ], "updateTime": "2024-02-03T16:00:28.854779Z" } } ] }
C#
Per scoprire come installare e utilizzare la libreria client per Cloud Asset Inventory, consulta Librerie client di Cloud Asset Inventory.
Per autenticarti a Cloud Asset Inventory, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 a Cloud Asset Inventory, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 a Cloud Asset Inventory, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 a Cloud Asset Inventory, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 a Cloud Asset Inventory, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 a Cloud Asset Inventory, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 a Cloud Asset Inventory, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.