Ressourcen suchen

Mit der Cloud Asset API können Sie eine benutzerdefinierte Abfragesprache verwenden, um Ressourcenmetadaten für ein Projekt, einen Ordner oder eine Organisation abzufragen.

Hinweise

Suchressourcen

Console

Führen Sie die folgenden Schritte aus, um alle Ressourcen zu durchsuchen.

  1. Rufen Sie in der Google Cloud Console die Seite Asset-Inventar auf.

    Asset Inventory aufrufen

  2. Um den Umfang der Suche festzulegen, öffnen Sie das Listenfeld "Projekte" in der Menüleiste und wählen Sie die abzufragende Organisation, den Ordner oder das Projekt aus.

  3. Wählen Sie den Tab Ressource aus.

  4. Geben Sie zum Suchen nach Ressourcen den Abfragetext in die Filterleiste ein. Wenn Sie das Textfeld auswählen, wird eine Liste der durchsuchbaren Felder angezeigt. Die Ressourcensuche unterstützt mehrere Felder. Weitere Informationen zur Abfragesyntax

  5. Suchergebnisse können auch nach den vordefinierten Filtern Asset-Typ, Projekt und Ort im Bereich Ergebnisse filtern gefiltert werden.

Die mit der Abfrage übereinstimmenden Ressourcen werden in der Tabelle Ergebnis aufgeführt.

Wenn Sie die Abfrage als Google Cloud CLI-Befehl ansehen möchten, wählen Sie View query aus.

Wählen Sie zum Exportieren der Ergebnisse CSV-Datei herunterladen aus.

gcloud

Sie können SearchAllResources mit dem Befehl gcloud asset search-all-resources aufrufen. Sie müssen die Google Cloud CLI 302.0.0 oder höher ausführen. Sie können Ihre Version mit dem Befehl gcloud version prüfen.

gcloud asset search-all-resources \
    --scope=SCOPE \
    --query=QUERY \
    --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
    --order-by=ORDER_BY \
    --read-mask=READ_MASK

Geben Sie folgende Werte an:

  • SCOPE: erforderlich. Ein Bereich kann ein Projekt, ein Ordner oder eine Organisation sein. Die Suche ist auf die Google Cloud-Ressourcen in diesem Bereich beschränkt. Dem Aufrufer muss die Berechtigung cloudasset.assets.searchAllResources für den ausgewählten Bereich gewährt werden. Wenn keine Angabe erfolgt, wird das konfigurierte Projektattribut verwendet.

    Zulässige Werte:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud-Projektnummer ermitteln

      Console

      Führen Sie die folgenden Schritte aus, um eine Google Cloud-Projektnummer zu ermitteln:

      1. Rufen Sie in der Google Cloud Console die Seite Dashboard auf.

        Zu Google Dashboard

      2. Klicken Sie in der Menüleiste auf das Auswahlfeld.
      3. Wählen Sie Ihre Organisation im Feld Auswählen aus aus und suchen Sie dann nach dem Namen Ihres Projekts.
      4. Klicken Sie auf den Projektnamen, um zu diesem Projekt zu wechseln. Die Projektnummer wird auf der Karte Projektinformationen angezeigt.

      gcloud-CLI

      Mit dem folgenden Befehl können Sie eine Google Cloud-Projektnummer abrufen:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      Google Cloud-Ordner-ID ermitteln

      Console

      Führen Sie die folgenden Schritte aus, um eine Google Cloud-Ordner-ID zu ermitteln:

      1. Öffnen Sie die Google Cloud Console.

        Zur Google Cloud Console

      2. Klicken Sie in der Menüleiste auf das Auswahlfeld.
      3. Klicken Sie auf das Feld Auswählen aus und wählen Sie Ihre Organisation aus.
      4. Suchen Sie nach dem Namen Ihres Ordners. Die Ordner-ID wird neben dem Ordnernamen angezeigt.

      gcloud-CLI

      Mit dem folgenden Befehl können Sie eine Google Cloud-Ordner-ID auf Organisationsebene 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 kann TOP_LEVEL_FOLDER_NAME eine vollständige oder teilweise Stringübereinstimmung sein. Entfernen Sie die Option --format, um weitere Informationen zu den gefundenen Ordnern zu sehen.

      Um die ID eines Ordners in einem anderen Ordner abzurufen, listen Sie die Unterordner auf:

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud-Organisations-ID ermitteln

      Console

      Führen Sie die folgenden Schritte aus, um eine Google Cloud-Organisations-ID zu ermitteln:

      1. Öffnen Sie die Google Cloud Console.

        Zur Google Cloud Console

      2. Klicken Sie in der Menüleiste auf das Auswahlfeld.
      3. Klicken Sie auf das Feld Auswählen aus und wählen Sie Ihre Organisation aus.
      4. Klicken Sie auf den Tab Alle. Die Organisations-ID wird neben dem Namen der Organisation angezeigt.

      gcloud-CLI

      Mit dem folgenden Befehl können Sie eine Google Cloud-Organisations-ID abrufen:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • QUERY: Optional. Die Abfrageanweisung. Weitere Informationen finden Sie unter Abfragesyntax. Wenn nicht angegeben oder leer, werden alle Ressourcen im angegebenen scope durchsucht.

    Beispiele:

    • name:Important, um Google Cloud-Ressourcen zu finden, deren Name das Wort Important enthält.

    • name=Important, um die Google Cloud-Ressource zu finden, deren Name exakt Important lautet.

    • displayName:Impor*, um Google Cloud-Ressourcen zu finden, deren Anzeigename Impor als Präfix eines Wortes enthält.

    • location:us-west*, um Google Cloud-Ressourcen zu finden, deren Standort zwei Wörter mit den Präfixen us und west enthält.

    • labels:prod, um Google Cloud-Ressourcen mit einem Label zu finden, bei dem entweder der Schlüssel oder der Wert das Wort prod enthält.

    • labels.env:prod, um Google Cloud-Ressourcen mit einem Label zu finden, wobei der Schlüssel env ist und der Wert das Wort prod enthält.

    • labels.env:*, um Google Cloud-Ressourcen mit einem Label zu finden, bei dem der Schlüssel env ist.

    • tagKeys:env, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, bei denen TagKey.namespacedName env enthält.

    • tagKeyIds=tagKeys/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, wobei TagKey.name genau tagKeys/123 ist.

    • tagValues:prod*, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, wobei TagValue.namespacedName ein Wort mit dem Präfix prod enthält.

    • tagValueIds=tagValues/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, wobei TagValue.name genau tagValues/123 ist.

    • effectiveTagKeys:env, um Google Cloud-Ressourcen zu finden, die direkt angehängt sind oder Tags übernehmen, bei denen TagKey.namespacedName env enthält.

    • effectiveTagKeyIds=tagKeys/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind oder diese übernehmen, wobei TagKey.name genau tagKeys/123 ist.

    • effectiveTagValues:prod*, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind oder diese übernehmen, wobei TagValue.namespacedName ein Wort mit dem Präfix prod enthält.

    • effectiveTagValueIds=tagValues/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind oder diese übernehmen, wobei TagValue.name genau tagValues/123 ist.

    • kmsKeys:key, um Google Cloud-Ressourcen zu finden, die mit vom Kunden verwalteten Verschlüsselungsschlüsseln verschlüsselt sind, deren Name das Wort key enthält.

    • relationships:instance-group-1, um Google Cloud-Ressourcen zu finden, die Beziehungen zu instance-group-1 im zugehörigen Ressourcennamen haben.

    • relationships:INSTANCE_TO_INSTANCEGROUP, um Compute Engine-Instanzen zu finden, die Beziehungen vom Typ INSTANCE_TO_INSTANCEGROUP haben.

    • relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1, um Compute Engine-Instanzen zu finden, die Beziehungen zu instance-group-1 im Ressourcennamen der Compute Engine-Instanzgruppe für den Beziehungstyp INSTANCE_TO_INSTANCEGROUP haben.

    • state:ACTIVE, um Google Cloud-Ressourcen zu finden, deren Status ACTIVE als Wort enthält.

    • NOT state:ACTIVE, um Google Cloud-Ressourcen zu finden, deren Status nicht ACTIVE als Wort enthält.

    • createTime<1609459200 oder createTime<2021-01-01 oder createTime<"2021-01-01T00:00:00", um Google Cloud-Ressourcen zu finden, die vor dem 2021-01-01 00:00:00 UTC erstellt wurden. 1609459200 ist der Epochenzeitstempel in Sekunden von 2021-01-01 00:00:00 UTC.

    • updateTime>1609459200 oder updateTime>2021-01-01 oder updateTime>"2021-01-01T00:00:00", um Google Cloud-Ressourcen zu finden, die nach dem 2021-01-01 00:00:00 UTC aktualisiert wurden. 1609459200 ist der Epochenzeitstempel in Sekunden von 2021-01-01 00:00:00 UTC.

    • project:12345, um Google Cloud-Ressourcen zu finden, die zu einem Google Cloud-Projekt mit der Nummer 12345 gehören.

    • folders:(123 or 456), um Google Cloud-Ressourcen zu finden, die zu einem Google Cloud-Ordner mit der Nummer 123 oder 456 gehören.

    • organization:123, um Google Cloud-Ressourcen zu finden, die zu einer Google Cloud-Organisation mit der Nummer 123 gehören.

    • parentFullResourceName:ImportantName, um Cloud-Ressourcen zu suchen, deren Name ImportantName enthält.

    • parentAssetType:Project, um Google Cloud-Ressourcen zu finden, deren übergeordneter Asset-Typ Project enthält.

    • Important, um Google Cloud-Ressourcen zu finden, die in einem der durchsuchbaren Felder das Wort Important enthalten.

    • Impor*, um Google Cloud-Ressourcen zu finden, die Impor als Präfix eines Wortes in einem der durchsuchbaren Felder enthalten.

    • Important location:(us-west1 OR global), um Google Cloud-Ressourcen zu finden, die in einem der durchsuchbaren Felder das Wort Important enthalten und sich auch in der Region us-west1 oder am Standort global befinden.

  • ASSET_TYPE: Optional. Eine Liste der Asset-Typen, nach denen in dieser Anfrage gesucht wird. Wenn das Feld leer ist, werden alle suchbaren Asset-Typen durchsucht. RE2-kompatible reguläre Ausdrücke werden unterstützt. Wenn der reguläre Ausdruck mit keinem unterstützten Assettyp übereinstimmt, wird der Fehler INVALID_ARGUMENT zurückgegeben.

  • ORDER_BY: Optional. Eine durch Kommas getrennte Liste von Feldern, die die Sortierreihenfolge der Ergebnisse angeben. Die Standardreihenfolge ist aufsteigend. Fügen Sie nach dem Feldnamen DESC ein, um die absteigende Reihenfolge anzugeben. Redundante Leerzeichen werden ignoriert. Beispiel: "location DESC, name". Nur einzelne primitive Felder in der Antwort können sortiert werden:

    • name

    • assetType

    • project

    • displayName

    • description

    • location

    • createTime

    • updateTime

    • state

    • parentFullResourceName

    • parentAssetType

    Alle anderen Felder wie wiederkehrende Felder (z. B. networkTags, kmsKeys), Zuordnungsfelder (z. B. labels) und Strukturfelder (z. B. additionalAttributes) werden nicht unterstützt.

  • READ_MASK: Optional. Eine durch Kommas getrennte Liste von Feldern, die angeben, welche Felder in den Ergebnissen zurückgegeben werden sollen. Wenn nicht angegeben, werden alle Felder außer versionedResources zurückgegeben. Wenn nur "*" angegeben ist, werden alle Felder zurückgegeben. Beispiele: "name,location", "name,versionedResources", "*".

    Die folgenden Felder werden standardmäßig zurückgegeben, wenn --read-mask nicht angegeben ist:

    • name

    • assetType

    • project

    • folders

    • organization

    • displayName

    • description

    • location

    • labels

    • tags

    • networkTags

    • kmsKeys

    • createTime

    • updateTime

    • state

    • additionalAttributes

    • parentFullResourceName

    • parentAssetType

    Einige sehr große Felder wie versionedResources, attachedResources und effectiveTags werden nicht standardmäßig zurückgegeben. Sie können sie aber im Parameter --read-mask angeben, wenn Sie sie einschließen möchten. Wenn "*" angegeben ist, werden alle verfügbaren Felder zurückgegeben. Beispiele: "name,location,effectiveTags", "name,versionedResources", "*".

Im Folgenden finden Sie einige Beispiele für gcloud-Befehle:

  • Hier finden Sie alle Ressourcen in organizations/123456, deren name das Wort mycompany enthält:

    gcloud asset search-all-resources \
        --scope=organizations/123456 \
        --query="name:mycompany"
    
  • Hier finden Sie alle Ressourcen in organizations/123456, deren name das Wort mycompany enthält, einschließlich der vollständigen Metadaten:

    gcloud asset search-all-resources \
        --scope=organizations/123456 \
        --query="name:mycompany" \
        --read-mask="name,versionedResources"
    

REST

Sie können SearchAllResources mit einem gültigen OAuth-Token für ein Projekt aufrufen. Zum Aufrufen der Methode SearchAllResources über Cloud Shell oder einer beliebigen Konsole, in der der Befehl gcloud verfügbar ist:

  1. Wenn Sie den OAuth-Zustimmungsbildschirm Ihres Projekts nicht konfiguriert haben, müssen Sie dies tun. Für den OAuth-Zustimmungsbildschirm sind eine E-Mail-Adresse und ein Produktname erforderlich.

    1. Rufen Sie die Seite OAuth-Zustimmungsbildschirm für Ihr Projekt auf.

      Zum OAuth-Zustimmungsbildschirm

    2. Geben Sie den Namen der Anwendung ein, der angezeigt werden soll.

    3. Wählen Sie unter Support-E-Mail-Adresse die E-Mail-Adresse aus, die Sie als öffentlicher Kontakt anzeigen möchten. Dies muss Ihre E-Mail-Adresse oder eine Google-Gruppe sein, deren Inhaber Sie sind.

    4. Fügen Sie nach Belieben weitere Details hinzu.

    5. Klicken Sie auf Speichern.

  2. Erstellen Sie ein OAuth-Token für Ihr Projekt. Weitere Informationen findest du unter OAuth 2.0 einrichten.

    1. Rufen Sie die Seite OAuth-Client-ID erstellen auf.

      Zur Seite „OAuth-Client-ID erstellen“

    2. Wählen Sie Desktop-App als Anwendungstyp aus.

    3. Klicken Sie auf Erstellen.

    4. Laden Sie die Datei client_secret.json herunter.

    5. Öffnen Sie die Seite Anmeldedaten.

      Zu den Anmeldedaten

    6. Klicken Sie rechts neben Ihrer neuen Client-ID auf JSON herunterladen.

    7. Speichern Sie die Datei an einem sicheren Speicherort, auf den nur Ihre Anwendung zugreifen kann.

  3. Melden Sie sich mit der JSON-Datei mit dem folgenden Befehl an.

    gcloud auth application-default login --client-id-file=YOUR_JSON_FILE
    

    Mit diesem Befehl werden Sie aufgefordert, einen Link zu öffnen. Achten Sie darauf, dass auf der Seite der Anwendungsname angezeigt wird, den Sie auf Ihrem OAuth-Zustimmungsbildschirm festgelegt haben.

  4. Sie können jetzt Ressourcen mit curl-Befehlen abfragen.

    curl -X POST \
         -H "X-HTTP-Method-Override: GET" \
         -H "Authorization: Bearer $(gcloud auth print-access-token)" \
         -H "Content-Type: application/json" \
         -d '{
              "assetTypes": [
                "ASSET_TYPE_1",
                "ASSET_TYPE_2",
                "..."
              ],
              "orderBy": "ORDER_BY",
              "pageSize": PAGE_SIZE,
              "query": "QUERY",
              "readMask": "READ_MASK"
             }' \
         https://cloudasset.googleapis.com/v1/SCOPE:searchAllIamPolicies
    

    Geben Sie folgende Werte an:

    • ASSET_TYPE: Optional. Eine Liste der Asset-Typen, nach denen in dieser Anfrage gesucht wird. Wenn das Feld leer ist, werden alle suchbaren Asset-Typen durchsucht. Reguläre Ausdrücke werden unterstützt. Wenn der reguläre Ausdruck mit keinem unterstützten Asset-Typ übereinstimmt, wird der Fehler INVALID_ARGUMENT zurückgegeben.

    • ORDER_BY: Optional. Eine durch Kommas getrennte Liste von Feldern, die die Sortierreihenfolge der Ergebnisse angeben. Die Standardreihenfolge ist aufsteigend. Fügen Sie nach dem Feldnamen " DESC" ein, um die absteigende Reihenfolge anzugeben. Redundante Leerzeichen werden ignoriert. Beispiel:"location DESC, name". Nur einzelne einfache Felder in der Antwort können sortiert werden:

      • name

      • assetType

      • project

      • displayName

      • description

      • location

      • createTime

      • updateTime

      • state

      • parentFullResourceName

      • parentAssetType

      Alle anderen Felder wie wiederkehrende Felder (z. B. networkTags, kmsKeys), Zuordnungsfelder (z. B. labels) und Strukturfelder (z. B. additionalAttributes) werden nicht unterstützt.

    • PAGE_SIZE: Optional. Die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen. Der Maximalwert beträgt 500. Wenn der Wert auf 0 oder ein negativer Wert festgelegt ist, wird ein geeigneter Standardwert ausgewählt. nextPageToken wird zurückgegeben, um nachfolgende Ergebnisse abzurufen.

    • QUERY: Optional. Die Abfrageanweisung. Weitere Informationen finden Sie unter Abfragesyntax. Wenn nicht angegeben oder leer, werden alle Ressourcen im angegebenen scope durchsucht.

      Beispiele:

      • name:Important, um Google Cloud-Ressourcen zu suchen, deren Name das Wort "Important" enthält.

      • name=Important, um die Google Cloud-Ressource zu suchen, deren Name genau "Important" ist.

      • displayName:Impor*, um Google Cloud-Ressourcen zu suchen, deren Anzeigename "Impor" als Präfix eines beliebigen Worts enthält.

      • location:us-west*, um Google Cloud-Ressourcen zu suchen, deren Standort sowohl "us" als auch "west" als Präfixe enthält.

      • labels:prod, um Google Cloud-Ressourcen mit einem Label zu suchen, dessen Schlüssel oder Wert das Wort "prod" enthält.

      • labels.env:prod, um Google Cloud-Ressourcen mit einem Label zu suchen, dessen Schlüssel "env" ist und dessen Wert das Wort "prod" enthält.

      • labels.env:*, um Google Cloud-Ressourcen mit einem Label zu suchen, dessen Schlüssel "env" ist.

      • tagKeys:env, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, bei denen TagKey.namespacedName das Wort „env“ enthält.

      • tagKeyIds=tagKeys/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, wobei TagKey.name genau „tagKeys/123“ ist.

      • tagValues:prod*, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, bei denen TagValue.namespacedName ein Wort mit dem Präfix „prod“ enthält.

      • tagValueIds=tagValues/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind, wobei TagValue.name genau „tagValues/123“ ist.

      • effectiveTagKeys:env, um Google Cloud-Ressourcen zu finden, die direkt angehängt sind oder Tags übernehmen, bei denen TagKey.namespacedName env enthält.

      • effectiveTagKeyIds=tagKeys/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind oder diese übernehmen, wobei TagKey.name genau tagKeys/123 ist.

      • effectiveTagValues:prod*, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind oder diese übernehmen, wobei TagValue.namespacedName ein Wort mit dem Präfix prod enthält.

      • effectiveTagValueIds=tagValues/123, um Google Cloud-Ressourcen zu finden, die direkt an Tags angehängt sind oder diese übernehmen, wobei TagValue.name genau tagValues/123 ist.

      • kmsKey:key, um Google Cloud-Ressourcen zu finden, die mit einem vom Kunden verwalteten Verschlüsselungsschlüssel verschlüsselt sind, dessen Name key als Wort enthält. Dieses Feld ist veraltet. Verwenden Sie das Feld kmsKeys, um Cloud KMS-Schlüsselinformationen abzurufen.

      • kmsKeys:key, um Google Cloud-Ressourcen zu finden, die mit vom Kunden verwalteten Verschlüsselungsschlüsseln verschlüsselt sind, deren Name das Wort „Schlüssel“ enthält.

      • relationships:instance-group-1, um Google Cloud-Ressourcen zu finden, die Beziehungen zu instance-group-1 im zugehörigen Ressourcennamen haben.

      • relationships:INSTANCE_TO_INSTANCEGROUP, um Compute Engine-Instanzen mit Beziehungen vom Typ INSTANCE_TO_INSTANCEGROUP zu finden.

      • relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1, um Compute Engine-Instanzen zu finden, die Beziehungen zu instance-group-1 im Ressourcennamen der Compute Engine-Instanzgruppe für den Beziehungstyp INSTANCE_TO_INSTANCEGROUP haben.

      • state:ACTIVE, um Google Cloud-Ressourcen zu suchen, deren Status "ACTIVE" als Wort enthält.

      • NOT state:ACTIVE, um Google Cloud-Ressourcen zu finden, deren Status nicht „ACTIVE“ als Wort enthält.

      • createTime<1609459200 oder createTime<2021-01-01 oder createTime<"2021-01-01T00:00:00", um Google Cloud-Ressourcen zu finden, die vor dem 2021-01-01 00:00:00 UTC erstellt wurden. 1609459200 ist der Epochenzeitstempel in Sekunden von 2021-01-01 00:00:00 UTC.

      • updateTime>1609459200 oder updateTime>2021-01-01 oder updateTime>"2021-01-01T00:00:00", um Google Cloud-Ressourcen zu finden, die nach dem 2021-01-01 00:00:00 UTC aktualisiert wurden. 1609459200 ist der Epochenzeitstempel in Sekunden von 2021-01-01 00:00:00 UTC.

      • project:12345, um Google Cloud-Ressourcen zu suchen, die zu einem Google Cloud-Projekt mit der Nummer 12345 gehören.

      • folders:(123 or 456), um Google Cloud-Ressourcen zu suchen, die zu einem Google Cloud-Ordner mit den Nummern 123 oder 456 gehören.

      • organization:123, um Google Cloud-Ressourcen zu suchen, die zu einer Google Cloud-Organisation mit der Nummer 123 gehören.

      • parentFullResourceName:ImportantName, um Cloud-Ressourcen zu suchen, deren Name ImportantName enthält.

      • parentAssetType:Project, um Google Cloud-Ressourcen zu finden, deren Asset-Typ des übergeordneten Elements Project enthält.

      • Important, um Google Cloud-Ressourcen zu suchen, die in einem der Suchfelder das Wort "Important" enthalten.

      • Impor*, um Google Cloud-Ressourcen zu suchen, die in einem der Suchfelder "Import" als Präfix eines beliebigen Wortes enthalten.

      • Important location:(us-west1 OR global), um Google Cloud-Ressourcen zu finden, die in einem der durchsuchbaren Felder das Wort Important enthalten und sich auch in der Region us-west1 oder am Standort global befinden.

    • READ_MASK: Optional. Eine durch Kommas getrennte Liste von Feldern, die angeben, welche Felder in den Ergebnissen zurückgegeben werden sollen. Wenn nicht angegeben, werden alle Felder außer versionedResources zurückgegeben. Wenn nur "*" angegeben ist, werden alle Felder zurückgegeben. Beispiele: "name,location", "name,versionedResources", "*".

      Die folgenden Felder werden standardmäßig zurückgegeben, wenn read_mask nicht angegeben ist:

      • name

      • assetType

      • project

      • folders

      • organization

      • displayName

      • description

      • location

      • labels

      • tags

      • networkTags

      • kmsKeys

      • createTime

      • updateTime

      • state

      • additionalAttributes

      • parentFullResourceName

      • parentAssetType

      Einige sehr große Felder wie versionedResources, attachedResources und effectiveTags werden nicht standardmäßig zurückgegeben. Sie können sie jedoch im Parameter read_mask angeben, wenn Sie sie einschließen möchten. Wenn "*" angegeben ist, werden alle verfügbaren Felder zurückgegeben. Beispiele: "name,location,effectiveTags", "name,versionedResources", "*".

    • SCOPE: Ein Bereich kann ein Projekt, ein Ordner oder eine Organisation sein. Die Suche ist auf die Google Cloud-Ressourcen in diesem Bereich beschränkt. Dem Aufrufer muss die Berechtigung cloudasset.assets.searchAllResources für den ausgewählten Bereich gewährt werden. Wenn keine Angabe erfolgt, wird das konfigurierte Projektattribut verwendet.

      Zulässige Werte:

      • projects/PROJECT_ID

      • projects/PROJECT_NUMBER

        Google Cloud-Projektnummer ermitteln

        Console

        Führen Sie die folgenden Schritte aus, um eine Google Cloud-Projektnummer zu ermitteln:

        1. Rufen Sie in der Google Cloud Console die Seite Dashboard auf.

          Zu Google Dashboard

        2. Klicken Sie in der Menüleiste auf das Auswahlfeld.
        3. Wählen Sie Ihre Organisation im Feld Auswählen aus aus und suchen Sie dann nach dem Namen Ihres Projekts.
        4. Klicken Sie auf den Projektnamen, um zu diesem Projekt zu wechseln. Die Projektnummer wird auf der Karte Projektinformationen angezeigt.

        gcloud-CLI

        Mit dem folgenden Befehl können Sie eine Google Cloud-Projektnummer abrufen:

        gcloud projects describe PROJECT_ID --format="value(projectNumber)"

      • folders/FOLDER_ID

        Google Cloud-Ordner-ID ermitteln

        Console

        Führen Sie die folgenden Schritte aus, um eine Google Cloud-Ordner-ID zu ermitteln:

        1. Öffnen Sie die Google Cloud Console.

          Zur Google Cloud Console

        2. Klicken Sie in der Menüleiste auf das Auswahlfeld.
        3. Klicken Sie auf das Feld Auswählen aus und wählen Sie Ihre Organisation aus.
        4. Suchen Sie nach dem Namen Ihres Ordners. Die Ordner-ID wird neben dem Ordnernamen angezeigt.

        gcloud-CLI

        Mit dem folgenden Befehl können Sie eine Google Cloud-Ordner-ID auf Organisationsebene 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 kann TOP_LEVEL_FOLDER_NAME eine vollständige oder teilweise Stringübereinstimmung sein. Entfernen Sie die Option --format, um weitere Informationen zu den gefundenen Ordnern zu sehen.

        Um die ID eines Ordners in einem anderen Ordner abzurufen, listen Sie die Unterordner auf:

        gcloud resource-manager folders list --folder=FOLDER_ID

      • organizations/ORGANIZATION_ID

        Google Cloud-Organisations-ID ermitteln

        Console

        Führen Sie die folgenden Schritte aus, um eine Google Cloud-Organisations-ID zu ermitteln:

        1. Öffnen Sie die Google Cloud Console.

          Zur Google Cloud Console

        2. Klicken Sie in der Menüleiste auf das Auswahlfeld.
        3. Klicken Sie auf das Feld Auswählen aus und wählen Sie Ihre Organisation aus.
        4. Klicken Sie auf den Tab Alle. Die Organisations-ID wird neben dem Namen der Organisation angezeigt.

        gcloud-CLI

        Mit dem folgenden Befehl können Sie eine Google Cloud-Organisations-ID abrufen:

        gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

Clientbibliothek und API-Referenz

So erstellen Sie eine Abfrage

Weitere Informationen zur Abfragesprache finden Sie unter Abfragesyntax.

Unter Ressourcenbeispiele suchen finden Sie weitere Informationen zu den Beispielabfragen für verschiedene reale Anwendungsfälle.

Google Cloud-Ressourcen nach Feldern mit Ressourcenmetadaten abfragen

Zum Suchen nach Ressourcenmetadaten haben Abfrageausdrücke folgende Formate:

  • Text Genau passend:

    FIELD=QUERY

  • Teilweise Übereinstimmung mit Text:

    FIELD:QUERY

  • Numerische Übereinstimmung: Vergleichsoperatoren (=, >, >=, <, <=)

    FIELDcomparison operatorQUERY

Ein FIELD mit suchbaren Ressourcenmetadaten kann Folgendes sein:

  • name: Der vollständige Ressourcenname der Ressource. Hinweis: Nicht alle Asset-Typen sind suchbar. Weitere Informationen finden Sie in der Liste der suchbaren Typen.

  • displayName::Der Anzeigename auf der Benutzeroberfläche.

  • description:Die Textbeschreibung der Ressource in einem oder mehreren Absätzen.

  • location:Der Standort der Ressource. Der Standort kann global, regional (z. B. us-east1) oder zonal (z. B. us-west1-b) sein.

  • labels:Mit dieser Ressource verknüpfte Labels. Labels können mit Labelschlüsseln, Labelwerten oder beidem übereinstimmen. Siehe Google Cloud Platform-Ressourcen mit Labels versehen und gruppieren.

  • labels.[key]:: Labelwert, der durch den Labelschlüssel identifiziert wird, der dieser Ressource zugeordnet ist. Beispiel: labels.env:prod In Labelschlüsseln sind nur Bindestriche (-), Unterstriche (_), Kleinbuchstaben und Ziffern zulässig. Schlüssel müssen mit einem Kleinbuchstaben beginnen. Internationale Zeichen sind zulässig. Weitere Informationen zu den Anforderungen für Labels

  • tagKeys::TagKey.namespacedName der Tags, die direkt an diese Ressource angehängt sind.

  • tagKeyIds:TagKey.name der Tags, die direkt an diese Ressource angehängt sind.

  • tagValues::TagValue.namespacedName der Tags, die direkt an diese Ressource angehängt sind.

  • tagValueIds:TagValue.name der Tags, die direkt an diese Ressource angehängt sind.

  • effectiveTagKeys:TagKey.namespacedName der Tags, die direkt an diese Ressource angehängt oder an diese Ressource übernommen wurden.

  • effectiveTagKeyIds:TagKey.name der Tags, die dieser Ressource direkt angehängt oder übernommen wurden.

  • effectiveTagValues:TagValue.namespacedName der Tags, die dieser Ressource direkt angehängt oder übernommen wurden.

  • effectiveTagValueIds:TagValue.name der Tags, die dieser Ressource direkt angehängt oder übernommen wurden.

  • networkTags: Mit dieser Ressource verknüpfte Netzwerk-Tags. Siehe Google Cloud Platform-Ressourcen mit Labels versehen und gruppieren.

  • kmsKey: Der vom Kunden verwaltete Verschlüsselungsschlüssel, der zum Verschlüsseln dieser Ressource verwendet wird. Dieses Feld ist veraltet. Verwenden Sie das Feld kmsKeys, um Informationen zum Cloud KMS-Schlüssel abzurufen. Weitere Informationen finden Sie unter CryptoKey und CryptoKeyVersion.

  • kmsKeys:Die vom Kunden verwalteten Verschlüsselungsschlüssel, die zum Verschlüsseln dieser Ressource verwendet werden. Siehe CryptoKey und CryptoKeyVersion.

  • Beziehungen:Die Beziehungen, die mit dieser Ressource verknüpft sind. Beziehungen können dem Beziehungstyp, dem Namen der zugehörigen Ressource oder beidem entsprechen. Siehe Unterstützte Beziehungstypen.

  • relationships.[relationship_type]: Der Name der zugehörigen Ressource für einen bestimmten Ressourcentyp, der dieser Ressource zugeordnet ist. Beispiel: relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1. Siehe Unterstützte Beziehungstypen.

  • sccSecurityMarks:Der tatsächliche Inhalt der mit dem Asset verknüpften Security Command Center-Sicherheitsmarkierungen. Beispiel: sccSecurityMarks.foo:bar Weitere Informationen finden Sie unter Unterstützte Asset-Typen in Security Command Center.

  • state::Der Textwert des Status dieser Ressource. Unterschiedliche Ressourcentypen haben unterschiedliche Statusdefinitionen, die aus verschiedenen Feldern unterschiedlicher Ressourcentypen zugeordnet werden. Beispiel: Wenn die Ressource eine von Compute Engine bereitgestellte Instanz ist, umfasst ihr Status PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING und TERMINATED. Siehe Definition für status in der API-Referenz. Wenn die Ressource ein von Cloud Resource Manager bereitgestelltes Projekt ist, umfasst sein Status LIFECYCLE_STATE_UNSPECIFIED, ACTIVE, DELETE_REQUESTED und DELETE_IN_PROGRESS. Siehe Definition für lifecycleState in der API-Referenz.

  • createTime::Der Zeitstempel der Erstellung dieser Ressource, zu dem die Ressource erstellt wurde. Die Genauigkeit erfolgt in Sekunden.

  • updateTime::Der Zeitstempel der letzten Aktualisierung dieser Ressource, zu dem die Ressource zuletzt geändert oder gelöscht wurde. Die Genauigkeit erfolgt in Sekunden.

  • project:Die Nummer des Projekts, zu dem diese Ressource gehört.

  • folders:Die Nummern der Ordner, zu denen diese Ressource gehört.

  • organization: Die Nummer der Organisation, zu der diese Ressource gehört.

  • parentFullResourceName: Der Name des übergeordneten Elements dieser Ressource.

  • parentAssetType:Der Typ des übergeordneten Elements dieser Ressource.

Beispiele: Abfrage nach einem bestimmten Feld

  • Alle Ressourcen in Ihrem scope suchen, deren name das Wort Important enthält:

    name:Important
    
  • Hier finden Sie alle Ressourcen in der Datei scope, deren displayName ein Wort mit dem Präfix prod enthält:

    displayName:prod*
    
  • Alle Ressourcen in Ihrem scope suchen, deren location das Wort us enthält:

    location:us
    
  • Alle Ressourcen in Ihrem scope suchen, deren location dem Wert us entspricht:

    location=us
    
  • Hier finden Sie alle Ressourcen in der scope, die direkt an Tags mit TagKey.namespacedName angehängt sind, die das Wort env enthalten:

    tagKeys:env
    
  • Finde alle Ressourcen in deiner scope, die direkt angehängte Tags haben, bei denen TagKey.name exakt gleich tagKeys/123 ist:

    tagKeyIds=tagKeys/123
    
  • Hier finden Sie alle Ressourcen in Ihrer scope, die direkt Tags mit TagValue.namespacedName angehängt haben, die ein Wort mit dem Präfix prod enthalten:

    tagValues:prod*
    
  • Finde alle Ressourcen in deiner scope, die direkt angehängte Tags haben, bei denen TagValue.name exakt gleich tagValues/123 ist:

    tagValueIds=tagValues/123
    
  • Hier finden Sie alle Ressourcen in der Datei scope, denen direkt Tags mit TagValue.namespacedName angehängt sind.

    tagValues:*
    
  • Hier finden Sie alle Ressourcen in Ihrer scope, die direkt angehängte oder übernommene Tags haben, deren TagKey.namespacedName das Wort env enthält:

    effectiveTagKeys:env
    
  • Suchen Sie alle Ressourcen in Ihrem scope, die direkt angehängte oder übernommene Tags haben, bei denen TagKey.name exakt gleich tagKeys/123 ist:

    effectiveTagKeyIds=tagKeys/123
    
  • Suchen Sie alle Ressourcen in Ihrer scope, die direkt angehängte oder übernommene Tags mit TagValue.namespacedName haben, die ein Wort mit dem Präfix prod enthalten:

    effectiveTagValues:prod*
    
  • Suchen Sie alle Ressourcen in Ihrem scope, die direkt angehängte oder übernommene Tags haben, bei denen TagValue.name exakt gleich tagValues/123 ist:

    effectiveTagValueIds=tagValues/123
    
  • Suchen Sie alle Ressourcen in Ihrer scope, an die ein direkt angehängtes oder übernommenes Tag mit TagValue.namespacedName angehängt ist.

    effectivetagValues:*
    
  • Suchen Sie nach allen Ressourcen in der scope, die eine label haben, bei denen entweder der Schlüssel oder der Wert das Wort prod enthält:

    labels:prod
    
  • Hier finden Sie alle Ressourcen in Ihrem scope, die eine label haben, bei denen der Schlüssel env ist und der Wert das Wort prod enthält:

    labels.env:prod
    
  • Suchen Sie alle Ressourcen in Ihrem scope, die eine label haben, bei denen der Schlüssel env ist und der Wert genau prod ist:

    labels.env=prod
    
  • So finden Sie alle Ressourcen in Ihrem scope, die eine label mit dem Schlüssel env haben:

    labels.env:*
    
  • Hier finden Sie alle Ressourcen in Ihrem scope, deren networkTags das Wort internal enthält:

    networkTags:internal
    
  • Alle Ressourcen in Ihrem scope suchen, deren networkTags genau internal ist:

    networkTags=internal
    
  • Suchen Sie nach allen Ressourcen in der Datei scope, die eine Beziehung zu instance-group-1 im zugehörigen Ressourcennamen haben:

    relationships:instance-group-1
    
  • Suchen Sie in Ihrem scope nach Recheninstanzen, die Beziehungen vom Typ INSTANCE_TO_INSTANCEGROUP haben:

    relationships:INSTANCE_TO_INSTANCEGROUP
    
  • Suchen Sie im scope nach Compute-Instanzen, die Beziehungen zu instance-group-1 im Ressourcennamen der Compute-Instanzgruppe für den Beziehungstyp INSTANCE_TO_INSTANCEGROUP haben:

    relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
    
  • Alle Ressourcen in Ihrem scope suchen, deren kmsKeys das Wort key enthält:

    kmsKeys:key
    
  • Alle Ressourcen in Ihrem scope suchen, deren kmsKeys dem Wert key entspricht:

    kmsKeys=key
    
  • Suchen Sie nach allen Ressourcen in der Datei scope, deren sccSecurityMarks genau das Schlüssel/Wert-Paar (key, value) enthält:

    sccSecurityMarks.key=value
    
  • Hier finden Sie alle Ressourcen in der Datei scope, deren sccSecurityMarks das Schlüssel/Wert-Paar mit dem Schlüssel key enthält:

    sccSecurityMarks.key:*
    
  • Alle Ressourcen in Ihrem scope suchen, deren state das Wort ACTIVE enthält:

    state:ACTIVE
    
  • Alle Ressourcen in Ihrem scope suchen, deren state nicht das Wort ACTIVE enthält:

    NOT state:ACTIVE
    
  • Hier finden Sie alle Ressourcen in der scope, die vor dem 2021-01-01 00:00:00 UTC erstellt wurden (1609459200 ist der Epochenzeitstempel von 2021-01-01 00:00:00 UTC in Sekunden):

    createTime<1609459200
    createTime<2021-01-01
    createTime<"2021-01-01T00:00:00"
    
  • Hier finden Sie alle Ressourcen in der Datei scope, die nach dem 2021-01-01 00:00:00 UTC aktualisiert wurden (1609459200 ist der Epochenzeitstempel von 2021-01-01 00:00:00 UTC in Sekunden):

    updateTime>1609459200
    updateTime>2021-01-01
    updateTime>"2021-01-01T00:00:00"
    
  • Alle Ressourcen in Ihrem scope suchen, deren project die Nummer 123 hat:

    project:123
    
  • So finden Sie alle Ressourcen in der Datei scope, die in folder mit der Nummer 123 enthalten sind:

    folders:123
    
  • Alle Ressourcen in Ihrem scope suchen, deren organization die Nummer 123 hat:

    organization:123
    
  • Alle Ressourcen in Ihrem scope suchen, deren parentFullResourceName ImportantName enthält:

    parentFullResourceName:ImportantName
    
  • Alle Ressourcen in Ihrem scope suchen, deren parentAssetType Project enthält:

    parentAssetType:Project
    
  • Hier finden Sie alle Ressourcen im scope, deren name das Wort Important und description ein Wort mit dem Präfix import enthält:

    name:Important description:import*
    
  • Hier finden Sie alle Ressourcen im scope, deren name das Wort Important oder description ein Wort mit dem Präfix import enthält:

    name:Important OR description:import*
    

Google Cloud-Ressourcen nach Freitext abfragen

Sie können auch einfach eine Freitextabfrage verwenden, ohne ein Feld anzugeben. Dann werden Ressourcen zurückgegeben, solange in den Ressourcenmetadaten ein Feld vorhanden ist, das mit der Abfrage übereinstimmt.

Beispiele: Abfrage nach Freitext

  • Hier finden Sie alle Ressourcen in der scope, deren Metadatenfelder (z. B. name, displayName, description) das Wort Important enthalten:

    Important
    
  • Hier finden Sie alle Ressourcen im scope, deren Metadatenfelder (z. B. name, displayName, description) ein Wort mit dem Präfix import enthalten:

    import*
    
  • Suchen Sie alle Ressourcen in Ihrer scope, deren Metadatenfelder (z. B. name, displayName, description) das Wort Important und auch ein Wort mit dem Präfix prod enthalten:

    Important prod*