Übersicht über Cloud Asset Inventory

Cloud Asset Inventory ist ein globaler Metadaten-Inventardienst, mit dem Sie die Asset-Metadaten von Google Cloud aufrufen, durchsuchen, exportieren, überwachen und analysieren können. Dabei wird ein Verlauf von bis zu 35 Tagen mit Informationen zum Erstellen, Aktualisieren und Löschen berücksichtigt. Für Assets, die sich in den letzten 35 Tagen nicht geändert haben, wird der aktuelle Status angezeigt.

Asset-Metadaten können aus folgenden Quellen stammen:

  • Google Cloud -Ressourcen, z. B. Compute Engine-VM-Instanzen, Cloud Storage-Buckets und App Engine-Instanzen.

  • Richtlinien, die für Ressourcen von Google Cloud festgelegt sind, z. B. IAM-Richtlinien, Organisationsrichtlinien und Access Context Manager-Richtlinien.

  • Laufzeitinformationen aus OS Inventory Management

So kannst du mit deinen Assets arbeiten:

Asset-Typen, Asset-Namen und Inhaltstypen

Cloud Asset Inventory bietet mehrere Methoden zur Interaktion mit Ihren Assets. Je nach verwendeter Methode und gewünschten Antwortdetails musst du in deinen Anfragen möglicherweise Asset-Typen, Asset-Namen und Inhaltstypen angeben.

Asset-Typ

Einige Cloud Asset Inventory-Methoden geben Ergebnisse basierend auf Assettypen zurück. Asset-Typen umfassen Google Cloud -Ressourcen, Richtlinien, Informationen zur Laufzeit des Betriebssysteminventars und Beziehungen. Die verfügbaren Asset-Typen und die Cloud Asset Inventory-Methoden, die sie unterstützen, werden unter Asset-Typen beschrieben.

Asset-Namen

Einige Cloud Asset Inventory-Methoden geben Ergebnisse basierend auf Asset-Namen zurück. Wenn Sie einen Asset-Namen angeben, müssen Sie den vollständigen Ressourcennamen verwenden. Eine Liste der vollständigen Ressourcennamen finden Sie unter Asset-Namen.

Inhaltstypen

Sie können zusätzliche Metadaten zu einer Ressource anfordern, indem Sie einen Metadaten-Inhaltstyp angeben. Wenn Sie keinen Inhaltstyp angeben, wird nur eine einfache Antwort zurückgegeben, die Informationen wie den Asset-Namen, das letzte Aktualisierungsdatum und die zugehörigen Projekte, Ordner und Organisationen enthält.

Die Namen der Inhaltstypen unterscheiden sich je nachdem, wie Sie mit Cloud Asset Inventory interagieren. Die Namen der RPC- und REST API sind identisch. Die Namen der Inhaltstypen in der gcloud CLI folgen jedoch einem anderen Muster. Aus Gründen der Einheitlichkeit und zur besseren Verständlichkeit werden im Rest dieser Dokumentation die Inhaltstypen anhand ihrer RPC- und REST-Namen bezeichnet.

In der folgenden Tabelle finden Sie die Inhaltstypen und ihre Beschreibungen:

Inhaltstyp Beschreibung
RPC- und REST-Name Name der gcloud CLI  
ACCESS_POLICY access-policy Die Access Context Manager-Richtlinie, die für ein Asset festgelegt ist.
IAM_POLICY iam-policy Die IAM-Richtlinienmetadaten, die an die Ressource gebunden sind.
ORG_POLICY org-policy Die Metadaten der Organisationsrichtlinie, die für ein Asset festgelegt sind. Mit diesem Inhaltstyp wird die alte Version der Organisationsrichtlinie 1 ausgegeben. Für die Version 2 der Organisationsrichtlinien können Sie den Inhaltstyp resource und den Ressourcentyp orgpolicy.googleapis.com/Policy ausprobieren.
OS_INVENTORY os-inventory Die Informationen zum Betriebssysteminventar in der Laufzeit. Wenn Sie OS Inventory aktivieren möchten, führen Sie die entsprechenden Schritte unter VM Manager einrichten aus.
RELATIONSHIP relationship

Erfordert Zugriff auf die Premium- oder Enterprise-Stufe von Security Command Center oder Gemini Cloud Assist.

Viele Google Cloud -Assets sind durch Beziehungen miteinander verbunden. So kann beispielsweise eine Compute-Instanzgruppe eine Compute-Instanz enthalten oder ein GKE-Cluster einen Knoten.

Beziehungsdaten sind ab dem 30. Mai 2022 verfügbar. Eine Beziehung kann einen eigenen Aktualisierungszeitstempel haben, da sie möglicherweise zu einem anderen Zeitpunkt abgeleitet wird als das Quell-Asset.

Eine Liste der unterstützten Beziehungen finden Sie unter Beziehungstypen.

RESOURCE resource Die Metadaten der Ressource.

Wie sich die Antworten je nach Inhaltstyp ändern

Die folgenden Beispiele zeigen, wie sich die Antworten ändern, wenn VM-Instanzen in einem Projekt über Cloud Asset Inventory mit verschiedenen Inhaltstypen aufgelistet werden.

Kein Inhaltstyp

Wenn Sie beim Auflisten von VM-Instanzen keinen Inhaltstyp angeben, erhalten Sie nur die Instanznamen, das Datum der letzten Aktualisierung und die zugehörigen Projekte, Ordner und Organisationen.

Maximieren, um Beispielantwort zu sehen

---
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'

Inhaltstyp „IAM_POLICY“

Wenn Sie den IAM_POLICY-Inhaltstyp angeben, erhalten Sie auch die IAM-Bindungen auf der VM, falls vorhanden.

Maximieren, um Beispielantwort zu sehen

---
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'

Inhaltstyp RESOURCE

Wenn Sie den Inhaltstyp RESOURCE angeben, erhalten Sie auch alle mit der VM verknüpften Metadaten.

Maximieren, um Beispielantwort zu sehen

---
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'

Inhaltstyp „RELATIONSHIP“

Für Beziehungen ist Zugriff auf die Premium- oder Enterprise-Stufe von Security Command Center oder Gemini Cloud Assist erforderlich.

Wenn Sie den Inhaltstyp RELATIONSHIP angeben, erhalten Sie auch Metadaten, die mit den zugehörigen Assets der VM-Instanz verknüpft sind.

Maximieren, um Beispielantwort zu sehen

---
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'

Wenn Sie den Inhaltstyp RELATIONSHIP verwenden, können Sie anstelle aller Beziehungen bestimmte Beziehungstypen anfordern.

Nächste Schritte