Sie können Ihre Assets in Google Cloud Projekten, Ordnern oder Organisationen auflisten.
Hinweise
Aktivieren Sie die Cloud Asset Inventory API in dem Projekt, in dem Sie Cloud Asset Inventory-Befehle ausführen.
Prüfen Sie, ob Ihr Konto die richtige Rolle zum Aufrufen der Cloud Asset Inventory API hat. Informationen zu den einzelnen Berechtigungen für die einzelnen Anruftypen finden Sie unter Berechtigungen.
Beschränkungen
Beim Auflisten von BigQuery-Tabellendaten werden nicht alle Felder unterstützt.
Häufig geänderte Asset-Felder in BigQuery-Metadaten wie
numBytes
,numLongTermBytes
,numPhysicalBytes
undnumRows
erhaltennull
-Werte.
Assets auflisten
Console
Sie können Assets mit dem RESOURCE
Inhaltstyp nur in der Google Cloud -Konsole ansehen. Wenn Sie andere Inhaltstypen aufrufen oder nach genaueren Kriterien filtern möchten, verwenden Sie stattdessen die gcloud CLI, REST oder eine Clientbibliothek.
So listen Sie Ressourcenmetadaten für Ihr Projekt, Ihren Ordner oder Ihre Organisation auf:
-
Rufen Sie in der Google Cloud Console die Seite Asset Inventory auf.
- Wechseln Sie zu dem Projekt, Ordner oder der Organisation, in dem Sie Ressourcen auflisten möchten.
- Klicken Sie auf den Tab Ressource.
- Wählen Sie im Bereich Ergebnisse filtern die Ressourcentypen, Projekte oder Standorte aus, nach denen die Ergebnisse gefiltert werden sollen.
- Klicken Sie im Ergebnisbereich auf den Anzeigenamen der Ressource, um die Metadaten einer Ressource aufzurufen.
gcloud
gcloud asset list \ --SCOPE \ --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \ --content-type=CONTENT_TYPE \ --relationship-types=RELATIONSHIP_TYPE_1,RELATIONSHIP_TYPE_2,... \ --snapshot-time="SNAPSHOT_TIME"
Geben Sie folgende Werte an:
-
SCOPE
: Verwenden Sie einen der folgenden Werte:-
project=PROJECT_ID
, wobeiPROJECT_ID
die ID des Projekts ist, das das Asset enthält, das Sie abrufen möchten. -
folder=FOLDER_ID
, wobeiFOLDER_ID
die ID des Ordners mit dem Asset ist, das Sie abrufen möchten.ID eines Google Cloud Ordners finden
Google Cloud console
So finden Sie die ID eines Google Cloud -Ordners:
-
Rufen Sie die Google Cloud Console auf.
- Klicken Sie in der Menüleiste auf das Listenfeld Umschalter.
- Wählen Sie Ihre Organisation aus dem Listenfeld aus.
- Suchen Sie nach dem Namen des Ordners. Die Ordner-ID wird neben dem Ordnernamen angezeigt.
gcloud-CLI
Sie können die ID eines Google Cloud -Ordners auf Organisationsebene mit dem folgenden Befehl abrufen:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Dabei ist TOP_LEVEL_FOLDER_NAME eine teilweise oder vollständige Stringübereinstimmung für den Namen des Ordners. Entfernen Sie das Flag
--format
, um weitere Informationen zu den gefundenen Ordnern zu sehen.Der vorherige Befehl gibt nicht die IDs von Unterordnern in Ordnern zurück. Führen Sie dazu den folgenden Befehl mit der ID eines Ordners der obersten Ebene aus:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organization=ORGANIZATION_ID
, wobeiORGANIZATION_ID
die ID der Organisation ist, die das Asset enthält, das Sie abrufen möchten.ID einer Google Cloud Organisation finden
Google Cloud console
So finden Sie die ID einer Google Cloud -Organisation:
-
Rufen Sie die Google Cloud Console auf.
- Klicken Sie in der Menüleiste auf das Listenfeld Umschalter.
- Wählen Sie Ihre Organisation aus dem Listenfeld aus.
- Klicken Sie auf den Tab Alle. Die Organisations-ID wird neben dem Namen der Organisation angezeigt.
gcloud-CLI
Sie können die ID einer Google Cloud Organisation mit dem folgenden Befehl abrufen:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
ASSET_TYPE_#
: Optional. Eine durch Kommas getrennte Liste von durchsuchbaren Asset-Typen. RE2-kompatible reguläre Ausdrücke werden unterstützt. Wenn der reguläre Ausdruck mit keinem unterstützten Asset-Typ übereinstimmt, wird einINVALID_ARGUMENT
-Fehler zurückgegeben. Wenn--asset-types
nicht angegeben ist, werden alle Asset-Typen zurückgegeben.CONTENT_TYPE
: Optional. Der Inhaltstyp der Metadaten, die Sie abrufen möchten. Wenn--content-type
nicht angegeben ist, werden nur grundlegende Informationen zurückgegeben, z. B. Asset-Namen, der Zeitpunkt der letzten Aktualisierung der Assets und die Projekte, Ordner und Organisationen, zu denen sie gehören.-
RELATIONSHIP_TYPE_#
: Optional. Erfordert Zugriff auf die Premium- oder Enterprise-Stufe von Security Command Center oder Gemini Cloud Assist. Eine durch Kommas getrennte Liste der Asset-Beziehungstypen, die Sie abrufen möchten. Sie müssenCONTENT_TYPE
aufRELATIONSHIP
setzen, damit das funktioniert. -
SNAPSHOT_TIME
: Optional. Die Zeit, zu der Sie einen Snapshot Ihrer Assets erstellen möchten, im gcloud-Thema zum Datums-/Uhrzeit-Format. Der Wert darf maximal 35 Tage in der Vergangenheit liegen. Wenn--snapshot-time
nicht angegeben ist, wird ein Snapshot zum aktuellen Zeitpunkt erstellt.
Alle Optionen finden Sie in der Referenz zur gcloud CLI.
Beispiel
Mit dem folgenden Befehl wird ein resource
-Metadatensnapshot von Compute Engine-Instanzen vom 30. Januar 2024 (2024-01-30
) im Projekt my-project
abgerufen.
Bevor Sie diesen Befehl ausführen, müssen Sie die Snapshot-Zeit auf einen Zeitpunkt innerhalb der letzten 35 Tage und den Projektnamen ändern.
gcloud asset list \ --project=my-project \ --asset-types=compute.googleapis.com/Instance \ --content-type=resource \ --snapshot-time="2024-01-30"
Beispielantwort
--- ancestors: - projects/000000000000 - folders/000000000000 - organizations/000000000000 assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-name resource: data: ASSET_METADATA updateTime: '2024-01-30T00:00:00.000000Z'
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH/assets
JSON-Text anfordern:
{ "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "contentType": "CONTENT_TYPE", "relationshipTypes": [ "RELATIONSHIP_TYPE_1", "RELATIONSHIP_TYPE_2", "..." ], "readTime": "SNAPSHOT_TIME", "pageSize": "PAGE_SIZE", "pageToken": "PAGE_TOKEN" }
Geben Sie folgende Werte an:
-
SCOPE_PATH
: Verwenden Sie einen der folgenden Werte:Zulässige Werte:
-
projects/PROJECT_ID
, wobeiPROJECT_ID
die ID des Projekts ist, das das Asset enthält, das Sie abrufen möchten. -
projects/PROJECT_NUMBER
, wobeiPROJECT_NUMBER
die Nummer des Projekts ist, das das Asset enthält, das Sie abrufen möchten.Google Cloud Projektnummer finden
Google Cloud console
So finden Sie die Projektnummer eines Google Cloud -Projekts:
-
Rufen Sie in der Google Cloud Console die Seite Willkommen auf.
- Klicken Sie in der Menüleiste auf das Listenfeld Umschalter.
-
Wählen Sie Ihre Organisation aus dem Listenfeld aus und suchen Sie dann nach Ihrem Projektnamen. Der Projektname, die Projektnummer und die Projekt-ID werden in der Nähe der Überschrift Willkommen angezeigt.
Es werden bis zu 4.000 Ressourcen angezeigt. Wenn Sie das gewünschte Projekt nicht sehen, rufen Sie die Seite Ressourcen verwalten auf und filtern Sie die Liste nach dem Namen des Projekts.
gcloud-CLI
Sie können eine Google Cloud Projektnummer mit dem folgenden Befehl abrufen:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
-
folders/FOLDER_ID
, wobeiFOLDER_ID
die ID des Ordners mit dem Asset ist, das Sie abrufen möchten.ID eines Google Cloud Ordners finden
Google Cloud console
So finden Sie die ID eines Google Cloud -Ordners:
-
Rufen Sie die Google Cloud Console auf.
- Klicken Sie in der Menüleiste auf das Listenfeld Umschalter.
- Wählen Sie Ihre Organisation aus dem Listenfeld aus.
- Suchen Sie nach dem Namen des Ordners. Die Ordner-ID wird neben dem Ordnernamen angezeigt.
gcloud-CLI
Sie können die ID eines Google Cloud -Ordners auf Organisationsebene mit dem folgenden Befehl abrufen:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Dabei ist TOP_LEVEL_FOLDER_NAME eine teilweise oder vollständige Stringübereinstimmung für den Namen des Ordners. Entfernen Sie das Flag
--format
, um weitere Informationen zu den gefundenen Ordnern zu sehen.Der vorherige Befehl gibt nicht die IDs von Unterordnern in Ordnern zurück. Führen Sie dazu den folgenden Befehl mit der ID eines Ordners der obersten Ebene aus:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organizations/ORGANIZATION_ID
, wobeiORGANIZATION_ID
die ID der Organisation ist, die das Asset enthält, das Sie abrufen möchten.ID einer Google Cloud Organisation finden
Google Cloud console
So finden Sie die ID einer Google Cloud -Organisation:
-
Rufen Sie die Google Cloud Console auf.
- Klicken Sie in der Menüleiste auf das Listenfeld Umschalter.
- Wählen Sie Ihre Organisation aus dem Listenfeld aus.
- Klicken Sie auf den Tab Alle. Die Organisations-ID wird neben dem Namen der Organisation angezeigt.
gcloud-CLI
Sie können die ID einer Google Cloud Organisation mit dem folgenden Befehl abrufen:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
ASSET_TYPE_#
: Optional. Ein Array von suchbaren Asset-Typen. RE2-kompatible reguläre Ausdrücke werden unterstützt. Wenn der reguläre Ausdruck mit keinem unterstützten Asset-Typ übereinstimmt, wird einINVALID_ARGUMENT
-Fehler zurückgegeben. WennassetTypes
nicht angegeben ist, werden alle Asset-Typen zurückgegeben.CONTENT_TYPE
: Optional. Der Inhaltstyp der Metadaten, die Sie abrufen möchten. WenncontentType
nicht angegeben ist, werden nur grundlegende Informationen zurückgegeben, z. B. Asset-Namen, der Zeitpunkt der letzten Aktualisierung der Assets sowie die Projekte, Ordner und Organisationen, zu denen sie gehören.-
RELATIONSHIP_TYPE_#
: Optional. Erfordert Zugriff auf die Premium- oder Enterprise-Stufe von Security Command Center oder Gemini Cloud Assist. Eine durch Kommas getrennte Liste der Asset-Beziehungstypen, die Sie abrufen möchten. Sie müssenCONTENT_TYPE
aufRELATIONSHIP
setzen, damit das funktioniert. -
SNAPSHOT_TIME
: Optional. Die Zeit, zu der Sie einen Snapshot Ihrer Assets erstellen möchten, im RFC 3339-Format. Der Wert darf maximal 35 Tage in der Vergangenheit liegen. WennreadTime
nicht angegeben ist, wird ein Snapshot zum aktuellen Zeitpunkt erstellt. -
PAGE_SIZE
: Optional. Die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen. Der Maximalwert beträgt 500. Wenn der Wert auf0
oder einen negativen Wert festgelegt ist, wird ein geeigneter Standardwert ausgewählt. Es wird einnextPageToken
zurückgegeben, um nachfolgende Ergebnisse abzurufen. -
PAGE_TOKEN
: Optional. Lange Antworten auf Anfragen werden auf mehrere Seiten aufgeteilt. WennpageToken
nicht angegeben ist, wird die erste Seite zurückgegeben. Nachfolgende Seiten können aufgerufen werden, indem SienextPageToken
aus der vorherigen Antwort alspageToken
-Wert verwenden.
Alle Optionen finden Sie in der REST-Referenz.
Beispiele für Befehle
Mit den folgenden Befehlen wird ein resource
-Metadatensnapshot von Compute Engine-Instanzen vom 30. Januar 2024 (2024-01-30T00:00:00Z
) im Projekt my-project
abgerufen.
Bevor Sie einen dieser Befehle ausführen, müssen Sie die Snapshot-Zeit auf die letzten 35 Tage und den Projektnamen ändern.
curl (Linux, macOS oder 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 '{ "assetTypes": ["compute.googleapis.com/Instance"], "contentType": "RESOURCE", "readTime": "2024-01-30T00:00:00Z" }' \ https://cloudasset.googleapis.com/v1/projects/my-project/assets
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": ["compute.googleapis.com/Instance"], "contentType": "RESOURCE", "readTime": "2024-01-30T00: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/assets" | Select-Object -Expand Content
Beispielantwort
{ "readTime": "2024-01-30T00:00:00Z", "assets": [ { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-name", "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": { ASSET_METADATA }, "location": "us-central1-a" }, "ancestors": [ "projects/000000000000", "folders/000000000000", "organizations/000000000000" ], "updateTime": "2024-01-30T00:00:00.000000Z" } ] }
C#
Informationen zum Installieren und Verwenden der Clientbibliothek für Cloud Asset Inventory finden Sie unter Cloud Asset Inventory-Clientbibliotheken.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Asset Inventory zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Informationen zum Installieren und Verwenden der Clientbibliothek für Cloud Asset Inventory finden Sie unter Cloud Asset Inventory-Clientbibliotheken.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Asset Inventory zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Java
Informationen zum Installieren und Verwenden der Clientbibliothek für Cloud Asset Inventory finden Sie unter Cloud Asset Inventory-Clientbibliotheken.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Asset Inventory zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Informationen zum Installieren und Verwenden der Clientbibliothek für Cloud Asset Inventory finden Sie unter Cloud Asset Inventory-Clientbibliotheken.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Asset Inventory zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
PHP
Informationen zum Installieren und Verwenden der Clientbibliothek für Cloud Asset Inventory finden Sie unter Cloud Asset Inventory-Clientbibliotheken.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Asset Inventory zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Informationen zum Installieren und Verwenden der Clientbibliothek für Cloud Asset Inventory finden Sie unter Cloud Asset Inventory-Clientbibliotheken.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Asset Inventory zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ruby
Informationen zum Installieren und Verwenden der Clientbibliothek für Cloud Asset Inventory finden Sie unter Cloud Asset Inventory-Clientbibliotheken.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Asset Inventory zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.