Übersicht über Cloud Asset Inventory

Cloud Asset Inventory ist ein globaler Metadaten-Inventardienst, mit dem Sie Ihre Google Cloud Asset-Metadaten ansehen, durchsuchen, exportieren, überwachen und analysieren können. Aufgaben, für die Sie Cloud Asset Inventory verwenden können, sind unter anderem:

  • Ressourcensuche und ‑verwaltung: Filtern Sie nach Metadateneigenschaften wie Standort, Erstellungszeit, Tags und Status.
  • Ressourcen-Monitoring: Änderungen an einer Ressource im Zeitverlauf verfolgen, um einen Prüfpfad zu erstellen, Probleme zu beheben und Compliance-Abweichungen zu verwalten.
  • Sicherheits- und Kostenprüfungen: Suchen Sie nach Ressourcen, die überberechtigt, öffentlich zugänglich oder nicht verwendet werden, um die Angriffsfläche zu minimieren und die Kosten zu optimieren.

Der Erstellungs-, Aktualisierungs- und Löschverlauf für Assets wird bis zu 35 Tage lang aufbewahrt. Für Assets, die sich in den letzten 35 Tagen nicht geändert haben, wird der letzte Status zurückgegeben.

Mit Assets in Google Cloudarbeiten

So können Sie mit Ihren Assets arbeiten:

Quellen für Asset-Metadaten

Asset-Metadaten können aus den folgenden Quellen stammen:

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

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

  • Laufzeitinformationen aus OS Inventory Management.

Asset-Typen, Asset-Namen und Inhaltstypen

Cloud Asset Inventory bietet mehrere Methoden zur Interaktion mit Ihren Assets. Je nach verwendeter Methode und gewünschtem Antwortdetail müssen Sie in Ihren Anfragen möglicherweise Asset-Typen, Asset-Namen und Inhaltstypen angeben.

Asset-Typen

Einige Cloud Asset Inventory-Methoden geben Ergebnisse basierend auf Asset-Typen zurück. Zu den Asset-Typen gehören Google Cloud Ressourcen, Richtlinien, OS Inventory-Laufzeitinformationen 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 für eine 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 Projekte, Ordner und Organisationen enthält, zu denen das Asset gehört.

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 Vereinfachung der Erklärungen wird in der restlichen Dokumentation auf Inhaltstypen anhand ihrer RPC- und REST-Namen verwiesen.

In der folgenden Tabelle sind die Inhaltstypen und ihre Beschreibungen aufgeführt:

Inhaltstyp Beschreibung
RPC- und REST-Name Name der gcloud CLI  
ACCESS_POLICY access-policy Die auf ein Asset angewendete Access Context Manager-Richtlinie.
IAM_POLICY iam-policy Die Bindung der IAM-Richtlinienmetadaten an die Ressource.
ORG_POLICY org-policy Die für ein Asset festgelegten Metadaten der Organisationsrichtlinie. Bei diesem Inhaltstyp wird die alte Organisationsrichtlinie V1 ausgegeben. Versuchen Sie für die Organisationsrichtlinie V2 den Inhaltstyp resource und den Ressourcentyp orgpolicy.googleapis.com/Policy.
OS_INVENTORY os-inventory Die OS Inventory-Informationen zur 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. Eine Compute-Instanzgruppe kann beispielsweise eine Compute-Instanz enthalten und ein GKE-Cluster kann einen Knoten enthalten.

Beziehungsdaten sind ab dem 30. Mai 2022 verfügbar. Eine Beziehung kann einen eigenen Zeitstempel für die Aktualisierung haben, da sie möglicherweise zu einem anderen Zeitpunkt als die Aktualisierungen des Quell-Assets abgeleitet wird.

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

RESOURCE resource Die Metadaten der Ressource.

So ändern sich Antworten je nach Inhaltstyp

Die folgenden Beispiele zeigen, wie sich 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, den Zeitpunkt der letzten Aktualisierung und die Projekte, Ordner und Organisationen, zu denen sie gehören.

Maximieren, um ein Beispiel für eine Antwort 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 Inhaltstyp IAM_POLICY angeben, erhalten Sie auch die IAM-Bindungen für die VM, sofern vorhanden.

Maximieren, um ein Beispiel für eine Antwort 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 „RELATIONSHIP“

Für Beziehungen ist Zugriff auf die Security Command Center Premium- oder Enterprise-Stufe 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 ein Beispiel für eine Antwort 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.

Inhaltstyp RESOURCE

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

Maximieren, um ein Beispiel für eine Antwort 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'

Datenaktualität

Cloud Asset Inventory bietet Eventual Consistency für aktuelle Daten und Best-Effort-Konsistenz für Verlaufsdaten. Es ist zwar selten, aber es kann vorkommen, dass Cloud Asset Inventory einige Datenaktualisierungen nicht erfasst.

Sofern in der Tabelle Ressourcentypen nicht anders angegeben, sind fast alle Asset-Aktualisierungen innerhalb von Minuten verfügbar.

Nächste Schritte