Cloud Asset Inventory è un servizio di inventario di metadati globale che ti consente di visualizzare, cercare, esportare, monitorare e analizzare i metadati degli Google Cloud asset, con una cronologia di creazione, aggiornamento ed eliminazione fino a 35 giorni. Gli asset che non sono stati modificati negli ultimi 35 giorni riportano il loro stato più recente.
I metadati delle risorse possono provenire dai seguenti elementi:
Google Cloud risorse, ad esempio istanze VM di Compute Engine, bucket Cloud Storage e istanze App Engine.
Criteri impostati sulle Google Cloud risorse, ad esempio i criteri IAM, i criteri dell'organizzazione e i criteri di Access Context Manager.
Informazioni sul runtime da OS Inventory Management.
Ecco come puoi utilizzare gli asset:
Elenca i tuoi asset e le relative relazioni in un determinato progetto, in una determinata cartella o in un'organizzazione e visualizza la cronologia degli asset fino a 35 giorni prima.
Cerca le tue risorse e i relativi criteri di autorizzazione IAM utilizzando un linguaggio di query personalizzato oppure esegui query sui tuoi asset con BigQuery SQL.
Esportare i metadati delle risorse in BigQuery o Cloud Storage.
Analizza cosa succederebbe se una risorsa venisse spostata in un altro progetto.
Esegui l'analisi dei criteri IAM e dell'organizzazione sulle risorse e visualizza i criteri IAM effettivi sulle risorse per sapere chi ha accesso a cosa.
Monitora le modifiche apportate alle risorse configurando e sottoscrivendo un feed.
Genera approfondimenti dai tuoi asset per contribuire a migliorare la tua security posture.
Tipi di asset, nomi di asset e tipi di contenuti
Cloud Asset Inventory offre più metodi per interagire con gli asset. A seconda del metodo utilizzato e dei dettagli della risposta che vuoi, potresti dover specificare i tipi di asset, i nomi degli asset e i tipi di contenuti nelle richieste.
Tipi di asset
Alcuni metodi di Cloud Asset Inventory restituiscono risultati in base ai tipi di asset. I tipi di risorse include Google Cloud risorse, norme, informazioni sul runtime dell'inventario del sistema operativo e relazioni. I tipi di asset disponibili e i metodi di Cloud Asset Inventory che li supportano sono descritti in dettaglio in Tipi di asset.
Nomi delle risorse
Alcuni metodi di Cloud Asset Inventory restituiscono risultati in base ai nomi delle risorse. Quando specifichi un nome asset, devi utilizzare il nome completo della risorsa. Consulta Nomi asset per un elenco dei nomi completi delle risorse.
Tipi di contenuti
Puoi richiedere metadati aggiuntivi per una risorsa specificando un tipo di contenuto dei metadati. Se non specifichi un tipo di contenuto, viene restituita solo una risposta di base contenente informazioni quali il nome della risorsa, l'ultima volta che è stata aggiornata e a quali progetti, cartelle e organizzazioni appartiene.
I nomi dei tipi di contenuti variano a seconda di come interagisci con l'inventario delle risorse di Cloud. I nomi delle API RPC e REST sono gli stessi. Tuttavia, i nomi dei tipi di contenuti della CLI gcloudseguono uno schema diverso. Per coerenza e semplicità di spiegazione, nel resto di questa documentazione i tipi di contenuti sono indicati con i relativi nomi RPC e REST.
La seguente tabella illustra i tipi di contenuti e le relative descrizioni:
Tipo di contenuti | Descrizione | |
---|---|---|
Nome RPC e REST | Nome dell'interfaccia a riga di comando gcloud | |
ACCESS_POLICY |
access-policy |
Il criterio Gestore contesto accesso impostato su una risorsa. |
IAM_POLICY |
iam-policy |
I metadati del criterio IAM associati alla risorsa. |
ORG_POLICY |
org-policy |
I metadati del criterio dell'organizzazione impostati su una risorsa. Questo tipo di contenuti
genera i criteri dell'organizzazione precedenti versione 1. Per le norme dell'organizzazione v2, prova il tipo di contenuti resource e un tipo di risorsa orgpolicy.googleapis.com/Policy .
|
OS_INVENTORY |
os-inventory |
Le informazioni sull'inventario del sistema operativo in fase di esecuzione. Per attivare l'inventario del sistema operativo, completa i passaggi pertinenti in Configurare VM Manager. |
RELATIONSHIP |
relationship |
Richiede l'accesso al livello Premium o Enterprise di Security Command Center, oppure Gemini Cloud Assist. Molti Google Cloud asset sono collegati tra loro da relazioni. Ad esempio, un gruppo di istanze Compute può contenere un'istanza Compute o un cluster GKE può contenere un node. I dati sulle relazioni sono disponibili dal 30 maggio 2022. Una relazione potrebbe avere il proprio timestamp di aggiornamento, perché potrebbe essere dedotta in un momento diverso rispetto agli aggiornamenti della risorsa di origine. Consulta Tipi di relazioni per un elenco delle relazioni supportate. |
RESOURCE |
resource |
I metadati della risorsa. |
Come cambiano le risposte in base al tipo di contenuti
Gli esempi seguenti mostrano come cambiano le risposte quando vengono elencate le istanze VM in un progetto tramite Cloud Asset Inventory con diversi tipi di contenuti.
Nessun tipo di contenuti
Se non specifichi un tipo di contenuti quando elenchi le istanze VM, ricevi solo i nomi delle istanze, l'ultima volta che sono state aggiornate e a quali progetti, cartelle e organizzazioni appartengono.
Espandi per visualizzare l'esempio di risposta
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME updateTime: '2023-11-15T12:28:30.087825Z'
Tipo di contenuti IAM_POLICY
Se specifichi il tipo di contenuti IAM_POLICY
, ricevi anche le associazioni IAM sulla VM, se presenti.
Espandi per visualizzare l'esempio di risposta
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance iamPolicy: bindings: - members: - user:USER_EMAIL_ADDRESS role: roles/compute.securityAdmin etag: ETAG name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME updateTime: '2023-12-19T23:35:42.673842Z'
Tipo di contenuti RESOURCE
Se specifichi il tipo di contenuto RESOURCE
, ricevi anche tutti i metadati associati alla VM.
Espandi per visualizzare l'esempio di risposta
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME resource: data: allocationAffinity: consumeAllocationType: ANY_ALLOCATION canIpForward: false confidentialInstanceConfig: enableConfidentialCompute: true cpuPlatform: AMD Rome creationTimestamp: '2023-11-14T14:35:37.059-08:00' deletionProtection: false description: '' disks: - architecture: X86_64 autoDelete: true boot: true deviceName: INSTANCE_NAME diskSizeGb: '10' guestOsFeatures: - type: VIRTIO_SCSI_MULTIQUEUE - type: SEV_CAPABLE - type: SEV_SNP_CAPABLE - type: SEV_LIVE_MIGRATABLE - type: UEFI_COMPATIBLE - type: GVNIC index: 0 interface: NVME licenses: - https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/licenses/ubuntu-2004-lts mode: READ_WRITE shieldedInstanceInitialState: dbx: - content: DATA fileType: BIN dbxs: - content: DATA fileType: BIN source: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/INSTANCE_NAME type: PERSISTENT displayDevice: enableDisplay: false fingerprint: FINGERPRINT id: 'ID' keyRevocationActionType: NONE_ON_KEY_REVOCATION labelFingerprint: LABEL_FINGERPRINT lastStartTimestamp: '2023-11-15T04:28:30.005-08:00' machineType: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/machineTypes/n2d-standard-2 name: INSTANCE_NAME networkInterfaces: - accessConfigs: - name: External NAT natIP: 34.27.105.222 networkTier: PREMIUM type: ONE_TO_ONE_NAT fingerprint: jKU51FdTluk= name: nic0 network: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default networkIP: 10.128.15.212 nicType: GVNIC stackType: IPV4_ONLY subnetwork: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/default reservationAffinity: consumeReservationType: ANY_ALLOCATION resourceStatus: {} scheduling: automaticRestart: true onHostMaintenance: TERMINATE preemptible: false provisioningModel: STANDARD selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME serviceAccounts: - email: PROJECT_NUMBER-compute@developer.gserviceaccount.com scopes: - https://www.googleapis.com/auth/devstorage.read_only - https://www.googleapis.com/auth/logging.write - https://www.googleapis.com/auth/monitoring.write - https://www.googleapis.com/auth/servicecontrol - https://www.googleapis.com/auth/service.management.readonly - https://www.googleapis.com/auth/trace.append shieldedInstanceConfig: enableIntegrityMonitoring: true enableSecureBoot: false enableVtpm: true shieldedInstanceIntegrityPolicy: updateAutoLearnPolicy: true startRestricted: false status: RUNNING tags: fingerprint: FINGERPRINT zone: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE discoveryDocumentUri: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest discoveryName: Instance location: ZONE parent: //cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER version: v1 updateTime: '2023-11-15T12:28:30.087825Z'
Tipo di contenuto RELATIONSHIP
Le relazioni richiedono l'accesso al livello Premium o Enterprise di Security Command Center o a Gemini Cloud Assist.
Se specifichi il tipo di contenuto RELATIONSHIP
, ricevi anche i metadati associati alle risorse correlate dell'istanza VM.
Espandi per visualizzare l'esempio di risposta
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME relatedAsset: ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID asset: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/disks/INSTANCE_NAME assetType: compute.googleapis.com/Disk relationshipType: COMPUTE_INSTANCE_USE_DISK updateTime: '2023-12-19T23:35:42.673842Z'
Quando utilizzi il tipo di contenuto RELATIONSHIP
, anziché richiedere tutti
i rapporti, puoi richiedere tipi di relazioni specifici.