Secrets mit Cloud Asset Inventory analysieren

Auf dieser Seite wird erläutert, wie Sie mit Cloud Asset Inventory Ihre Secrets überwachen, Daten zur Analyse exportieren und leistungsstarke Abfragen ausführen, um die benötigten Informationen zu erhalten.

Übersicht

Cloud Asset Inventory analysiert Ihre Google Cloud Umgebung und erfasst alle Änderungen an Ihren Cloud-Ressourcen, z. B. an virtuellen Maschinen, Datenbanken, Storage-Buckets und in diesem Zusammenhang an Ihren Secret Manager-Secrets. Die Integration zwischen Secret Manager und Cloud Asset Inventory bietet Ihnen folgende Vorteile:

  • Abfragen ausführen: Sie können nach bestimmten vertraulichen Informationen suchen oder Muster in Ihren vertraulichen Informationen erkennen.

  • Benachrichtigungen einrichten: Konfigurieren Sie Cloud Asset Inventory so, dass Benachrichtigungen an Pub/Sub gesendet werden, wenn bestimmte Ereignisse eintreten, z. B. wenn Secrets erstellt, geändert oder gelöscht werden.

  • Daten exportieren: Exportieren Sie Ihr vertrauliches Inventar nach BigQuery, um es detailliert zu analysieren und Berichte zu erstellen.

  • Secrets verwalten und analysieren: Sie können alle Ihre Secrets an einem Ort (projektübergreifend und in Ihrer gesamten Organisation) aufrufen und Secrets identifizieren, die möglicherweise falsch konfiguriert sind oder gegen die Sicherheitsrichtlinien Ihrer Organisation verstoßen. So können Sie beispielsweise Secrets finden, die nicht regelmäßig rotiert werden oder für die keine geeigneten Zugriffssteuerungen vorhanden sind.

Dies ist eine erweiterte Aufgabe für Secret Manager-Nutzer. Bevor Sie diese Seite lesen, empfehlen wir Ihnen, sich mit den folgenden Themen vertraut zu machen:

Secret Manager abfragen

Wenn Sie Ihre Secrets mit SQL-ähnlichen Abfragen analysieren möchten, empfehlen wir, Ihr Secret und Ihre Secret-Versionen nach BigQuery zu exportieren. Secret Manager ist nicht in Asset Search oder Policy Analyzer eingebunden. Bei diesen Abfragen werden die Google Cloud CLI und BigQuery verwendet, um nach Ihren Assets zu suchen.

Beschränkungen

Für die Analyse von Secret Manager-Ressourcen mit Cloud Asset Inventory gilt die folgende Einschränkung:

  • Cloud Asset Inventory unterstützt das Exportieren und Auflisten von Snapshots nur für die letzten fünf Wochen.

Asset-Änderungen überwachen

Cloud Asset Inventory verfolgt Echtzeit-Updates und unterstützt das Monitoring dieser Änderungen. Sie können Feeds konfigurieren, um jedes Mal, wenn sich Ihre Ressourcen ändern, Benachrichtigungen an eine Reihe von konfigurierten Pub/Sub-Themen zu senden. Darüber hinaus unterstützt Cloud Asset Inventory das Konfigurieren von Bedingungen für Ihre Feeds, sodass Sie bestimmte Änderungen für bestimmte Asset-Typen überwachen können. Informationen zum Auslösen von Workflows bei Asset-Änderungen finden Sie in der Pub/Sub-Dokumentation.

Assets in BigQuery exportieren

Durch den Export Ihrer Secrets und Secret-Versionen nach BigQuery können Sie SQL-ähnliche Abfragen für große Datenmengen ausführen und wertvolle Informationen über Ihre Assets gewinnen. Prüfen Sie vor dem Export Ihrer Assets, ob Ihr Dataset und Ihre Dienstkonten ordnungsgemäß konfiguriert sind.

Führen Sie den folgenden Befehl aus, um Ihre Assets zu exportieren:

gcloud

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • CONTENT_TYPE: der Asset-Inhaltstyp (RESOURCE).
  • PROJECT_ID: die ID des Projekts, das die zu analysierenden Secrets enthält.
  • SNAPSHOT_TIME: der Zeitpunkt, für den ein Ressourcen-Snapshot erstellt werden soll. Dieser liegt zwischen jetzt und 5 Wochen in der Vergangenheit.
  • BIGQUERY_PROJECT_ID: die ID des Projekts, in dem sich die BigQuery-Tabelle befindet.
  • DATASET_ID: die ID des BigQuery-Datasets.
  • TABLE_NAME: die Tabelle, in die Sie Ihre Metadaten exportieren. Wenn sie nicht vorhanden ist, wird sie erstellt.

Führen Sie folgenden Befehl aus:

Linux, macOS oder Cloud Shell

gcloud asset export \
  --content-type=CONTENT_TYPE \
  --project=PROJECT_ID \
  --snapshot-time=SNAPSHOT_TIME \
  --bigquery-table=projects/BIGQUERY_PROJECT_ID/datasets/DATASET_ID/tables/TABLE_NAME \
  --output-bigquery-force

Windows (PowerShell)

gcloud asset export `
  --content-type=CONTENT_TYPE `
  --project=PROJECT_ID `
  --snapshot-time=SNAPSHOT_TIME `
  --bigquery-table=projects/BIGQUERY_PROJECT_ID/datasets/DATASET_ID/tables/TABLE_NAME `
  --output-bigquery-force

Windows (cmd.exe)

gcloud asset export ^
  --content-type=CONTENT_TYPE ^
  --project=PROJECT_ID ^
  --snapshot-time=SNAPSHOT_TIME ^
  --bigquery-table=projects/BIGQUERY_PROJECT_ID/datasets/DATASET_ID/tables/TABLE_NAME ^
  --output-bigquery-force

Weitere Informationen finden Sie unter Nach BigQuery exportieren.

Beispielabfragen

Mit diesen Beispielabfragen können Sie nach Secrets und Secret-Versionen mit bestimmten Eigenschaften suchen.

Secrets, die in den letzten zwei Wochen erstellt wurden

Suchen Sie nach Secrets (und ihren Attributen), die Ihrer Organisation in den letzten zwei Wochen hinzugefügt wurden.

BigQuery

  SELECT name, FROM BIGQUERY_TABLE
  WHERE asset_type='secretmanager.googleapis.com/Secret' AND
  DATE(JSON_VALUE(resource.data, '$.createTime')) > DATE_SUB(CURRENT_DATE(), INTERVAL 2 WEEK);
  

Ersetzen Sie BIGQUERY_TABLE durch den vollständigen Pfad zur BigQuery-Tabelle, in die Sie alle Assets im Abschnitt Assets in BigQuery exportieren dieses Dokuments exportiert haben.

gcloud

    NOW=$(TZ=GMT date +"%Y-%m-%dT%H:%M:%SZ")
    gcloud asset list --project=PROJECT_ID \
        --asset-types=