Panoramica di Cloud Asset Inventory

Cloud Asset Inventory è un servizio di inventario di metadati globale che ti consente di visualizzare, cercare, esportare, monitorare e analizzare i metadati delle risorse Google Cloud , con fino a 35 giorni di cronologia di creazione, aggiornamento ed eliminazione. 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:

  • Risorse , come istanze VM Compute Engine, benne Cloud Storage e istanze App Engine.

  • Criteri impostati sulle risorse Google Cloud , ad esempio i criteri IAM, i criteri dell'organizzazione e i criteri di Gestore contesto accesso.

  • Informazioni sul runtime da OS Inventory Management.

Ecco come puoi utilizzare gli asset:

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 asset includeono risorse, criteri, informazioni sul runtime dell'inventario del sistema operativo e relazioni di Google Cloud . 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 lCloud Asset Inventory. I nomi delle API RPC e REST sono gli stessi. Tuttavia, i nomi dei tipi di contenuti gcloud CLI 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 gcloud CLI  
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 il criterio dell'organizzazione precedente versione 1. Per le norme dell'organizzazione versione 2, 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 asset di Google Cloud 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.

Passaggi successivi