Sie können in einem Projekt, Ordner oder einer Organisation nach Ressourcen suchen und die zurückgegebenen Ergebnisse mit einer Abfrage filtern.
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.
Abfrage erstellen
Bevor Sie eine Abfrage erstellen, kann es hilfreich sein, mit einer Suchanfrage zu beginnen, in der keine Abfrage angegeben ist. Verwenden Sie die Felder und Werte aus der vollständigen Antwort, um eine Abfrage mit der Suchanfragesyntax zu erstellen und sie so lange zu optimieren, bis die gewünschten Ergebnisse zurückgegeben werden.
Felder, die in einer Abfrage verwendet werden können, werden in der Referenzdokumentation zu „searchAllResources“ beschrieben.
Nicht alle Ressourcen können durchsucht werden. Unter Ressourcentypen finden Sie Ressourcennamen und können prüfen, ob sie für die Such-APIs verfügbar sind.
Nach Ressourcen suchen
Console
Führen Sie die folgenden Schritte aus, um nach Ressourcenmetadaten zu suchen.
-
Rufen Sie in der Google Cloud Console die Seite Asset Inventory auf.
- Wechseln Sie zu dem Projekt, Ordner oder der Organisation, in dem bzw. der Sie suchen möchten.
- Klicken Sie auf den Tab Ressource.
-
Geben Sie zum Suchen nach Ressourcen eine Abfrage in das Feld Filter ein. Informationen zum Schreiben einer Suchanfrage finden Sie unter Suchanfragesyntax.
Um das Erstellen von Abfragen zu vereinfachen, können Sie auf das Feld Filter klicken, um die verfügbaren durchsuchbaren Felder in Ihrer Abfrage einblenden und hinzufügen zu lassen.
Nach einer Suche werden die mit der Abfrage übereinstimmenden Ressourcen in der Tabelle Ergebnisse aufgeführt. Doppelklicken Sie auf die Abfrage, um sie zu bearbeiten, oder verwenden Sie den Bereich Ergebnisse filtern, um die Suchergebnisse nach bestimmten Kriterien einzuschränken.
Wenn Sie die Abfrage als Google Cloud CLI-Befehl ansehen möchten, klicken Sie auf Abfrage ansehen.
Klicken Sie zum Exportieren der Ergebnisse auf CSV-Datei herunterladen.
gcloud
gcloud asset search-all-resources \ --scope=SCOPE_PATH \ --query="QUERY" \ --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \ --order-by="ORDER_BY" \ --read-mask="READ_MASK"
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 die Assets enthält, nach denen Sie suchen möchten. -
projects/PROJECT_NUMBER
, wobeiPROJECT_NUMBER
die Nummer des Projekts ist, das die Assets enthält, nach denen Sie suchen 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 den Assets ist, nach denen Sie suchen 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 die Assets enthält, nach denen Sie suchen 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))"
-
-
-
QUERY
: Optional. Der Abfrageausdruck. Wenn nicht angegeben oder leer, wird im angegebenen Bereich nach allen Ressourcen gesucht. Informationen zum Schreiben einer Suchanfrage finden Sie unter Suchanfragesyntax. 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.-
ORDER_BY
: Optional. Eine durch Kommas getrennte Liste von Feldern, die die Sortierreihenfolge der Ergebnisse angibt. Die Standardreihenfolge ist aufsteigend. Fügen Sie nach dem FeldnamenDESC
ein, um die absteigende Reihenfolge anzugeben. In der Referenzdokumentation finden Sie Informationen dazu, welche Felder sortiert werden können. READ_MASK
: Optional. Eine durch Kommas getrennte Liste von Feldern, die angibt, welche Felder in den Ergebnissen zurückgegeben werden sollen. Informationen zu den Feldern, die standardmäßig zurückgegeben werden, und zu anderen Bedingungen, die beim Angeben einer Lesemaske zu beachten sind, finden Sie unter.
Mit den Flags --format
und --flatten
können Sie die Ausgabe der gcloud CLI formatieren.
Alle Optionen finden Sie in der Referenz zur gcloud CLI.
Beispiel
Führen Sie den folgenden Befehl aus, um eine Liste aller Compute Engine-Instanzen im Projekt my-project
mit dem Wort instance
gefolgt von einem 1
in ihrem vollständigen Ressourcennamen abzurufen. Die Ergebnisse werden in absteigender Reihenfolge nach Name sortiert. Aufgrund der Lesemaske werden nur die Felder name
und location
zurückgegeben.
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="name:instance 1" \ --asset-types=compute.googleapis.com/Instance \ --order-by="name DESC" \ --read-mask="name,location"
Beispielantwort
--- location: us-central1-a name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-2-1 --- location: us-central1-a name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:searchAllResources
JSON-Text anfordern:
{ "query": "QUERY", "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "orderBy": "ORDER_BY", "pageSize": "PAGE_SIZE", "pageToken": "PAGE_TOKEN", "readMask": "READ_MASK" }
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 die Assets enthält, nach denen Sie suchen möchten. -
projects/PROJECT_NUMBER
, wobeiPROJECT_NUMBER
die Nummer des Projekts ist, das die Assets enthält, nach denen Sie suchen 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 gesuchte 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 den Assets ist, nach denen Sie suchen 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 die Assets enthält, nach denen Sie suchen 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))"
-
-
-
QUERY
: Optional. Der Abfrageausdruck. Wenn nicht angegeben oder leer, wird im angegebenen Bereich nach allen Ressourcen gesucht. Informationen zum Schreiben einer Suchanfrage finden Sie unter Suchanfragesyntax. 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.-
ORDER_BY
: Optional. Eine durch Kommas getrennte Liste von Feldern, die die Sortierreihenfolge der Ergebnisse angibt. Die Standardreihenfolge ist aufsteigend. Fügen Sie nach dem FeldnamenDESC
ein, um die absteigende Reihenfolge anzugeben. In der Referenzdokumentation finden Sie Informationen dazu, welche Felder sortiert werden können. -
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. READ_MASK
: Optional. Eine durch Kommas getrennte Liste von Feldern, die angibt, welche Felder in den Ergebnissen zurückgegeben werden sollen. Informationen zu den Feldern, die standardmäßig zurückgegeben werden, und zu anderen Bedingungen, die beim Angeben einer Lesemaske zu beachten sind, finden Sie unter.
Alle Optionen finden Sie in der REST-Referenz.
Beispiele für Befehle
Führen Sie einen der folgenden Befehle aus, um eine Liste aller Compute Engine-Instanzen im Projekt my-project
abzurufen, deren vollständiger Ressourcenname das Wort instance
gefolgt von einem 1
enthält. Die Ergebnisse werden in absteigender Reihenfolge nach Name sortiert und nur die Felder name
und location
werden zurückgegeben.
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 '{ "query": "name:instance 1", "assetTypes": ["compute.googleapis.com/Instance"], "orderBy": "name DESC", "readMask": "name,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "query": "name:instance 1", "assetTypes": ["compute.googleapis.com/Instance"], "orderBy": "name DESC", "readMask": "name,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Beispielantwort
{ "results": [ { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-2-1", "location": "us-central1-a" }, { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1", "location": "us-central1-a" } ] }
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.
Weitere Suchbeispiele
Die folgenden Codebeispiele zeigen spezifische Suchanfragen für gcloud und REST, die Ihnen beim Erstellen eigener Suchanfragen helfen können.
Alle Ressourcen in einem Projekt
Im folgenden Beispiel wird gezeigt, wie Sie nach allen Ressourcen im Projekt my-project
suchen.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --format="table(assetType.basename(), name.basename(), name.scope(projects).segment(0):label=PROJECT_ID, labels)"
REST
HTTP-Methode und URL:
GET https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Beispiele für Befehle
curl (Linux, macOS oder Cloud Shell)
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Compute Engine-Instanzen nach Beschreibung
Im folgenden Beispiel wird gezeigt, wie nach Compute Engine-Instanzen im Projekt my-project
mit dem genauen Namen instance-prod
gesucht wird.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="description=instance-prod" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" }
Beispiele für Befehle
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", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Wenn Sie nach Instanzen suchen möchten, deren Name instance-prod
enthält (z. B. instance-prod-1
und instance-prod-2
), anstatt nach einer exakten Übereinstimmung, ersetzen Sie =instance-prod
durch :instance-prod
.
Compute Engine-Instanzen nach Label
Im folgenden Beispiel wird gezeigt, wie Sie im Projekt my-project
nach Compute Engine-Instanzen mit dem Label env
suchen.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="labels.env:*" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, labels)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" }
Beispiele für Befehle
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", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Compute Engine-Instanzen nach TagKey
Das folgende Beispiel zeigt, wie Sie im Projekt my-project
nach Compute Engine-Instanzen suchen, die direkt angehängte Tags mit einem TagKey
haben.namespacedName
mit env
.
Wenn Sie stattdessen nach effektiven TagKeys suchen möchten, ersetzen Sie tagKeys
durch effectiveTagKeys
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="tagKeys:env" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, tags)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" }
Beispiele für Befehle
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", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Compute Engine-Instanzen nach TagValue
Das folgende Beispiel zeigt, wie Sie im Projekt my-project
nach Compute Engine-Instanzen suchen, an die direkt Tags angehängt sind, bei denen TagValue
.namespacedName
enthält prod
oder sea
und der Instanzname enthält nicht instance1
.
Wenn Sie stattdessen nach effektiven TagValues suchen möchten, ersetzen Sie tagValues
durch effectiveTagValues
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="tagValues:(prod OR sea) (NOT name:instance1)" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, tags)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" }
Beispiele für Befehle
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", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Compute Engine-Instanzen, die nach einem bestimmten Zeitpunkt erstellt wurden
Das folgende Beispiel zeigt, wie Sie im Projekt my-project
nach Compute Engine-Instanzen suchen, die nach dem 31. Dezember 2023 erstellt wurden.
Weitere Informationen zu Datums-/Uhrzeitvergleichen finden Sie unter Numerischer Vergleich und Zeitstempelvergleich.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="createTime>2023-31-12" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" }
Beispiele für Befehle
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", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Compute Engine-Instanzen in den USA
Im folgenden Beispiel wird gezeigt, wie nach Compute Engine-Instanzen im Projekt my-project
gesucht wird, die sich in den USA befinden.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="location:us-*" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" }
Beispiele für Befehle
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", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Compute Engine-Instanzen, die ausgeführt werden
Im folgenden Beispiel wird gezeigt, wie Sie nach Compute Engine-Instanzen suchen, die im Projekt my-project
ausgeführt werden.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="state=RUNNING" \ --asset-types=compute.googleapis.com/Instance \ --read-mask="name,assetType,location,versionedResources" \ --format="table(name, assetType, location, versionedResources)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" }
Beispiele für Befehle
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", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
IAM-Ablehnungsrichtlinien
Das folgende Beispiel zeigt, wie Sie im Projekt my-project
nach IAM-Ablehnungsrichtlinien suchen.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --asset-types=iam.googleapis.com/PolicyV2 \ --query="name:denypolicies"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "assetTypes": "iam.googleapis.com/PolicyV2", "pageSize": 1, "query": "name:denypolicies" }
Beispiele für Befehle
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": "iam.googleapis.com/PolicyV2", "pageSize": 1, "query": "name:denypolicies" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "iam.googleapis.com/PolicyV2", "pageSize": 1, "query": "name:denypolicies" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Wenn Sie nach Compute Engine-Instanzen suchen möchten, die nicht ausgeführt werden, ersetzen Sie state=RUNNING
durch NOT state:running
.
Weitere Google Cloud Informationen
Für Beziehungsabfragen ist Zugriff auf die Premium- oder Enterprise-Stufe von Security Command Center oder Gemini Cloud Assist erforderlich.
Im folgenden Beispiel wird gezeigt, wie Sie im Projekt my-project
nach verwandten Ressourcen für unterstützte Beziehungstypen suchen. Suchen Sie beispielsweise nach allen Compute Engine-Instanzen, die Teil von Instanzgruppen sind, deren vollständige Ressourcennamen instance-group
enthalten.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="relationships:instance-group" \ --format="table(name, assetType, relationships)"
REST
HTTP-Methode und URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
JSON-Text anfordern:
{ "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" }
Beispiele für Befehle
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 '{ "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Sie können auch den Typ der Beziehung angeben, nach der Sie suchen möchten. Wenn Sie beispielsweise nach dem Beziehungstyp INSTANCE_TO_INSTANCEGROUP
suchen möchten, verwenden Sie die Abfrage relationships.INSTANCE_TO_INSTANCEGROUP
. Wenn Sie mit einem vollständigen Ressourcennamen, der instance-group
enthält, nach diesem Beziehungstyp suchen möchten, verwenden Sie die Abfrage relationships.INSTANCE_TO_INSTANCEGROUP:instance-group
.