BigQuery in Google SecOps einbinden
In diesem Dokument wird beschrieben, wie Sie BigQuery in Google Security Operations einbinden.
Anwendungsfälle
Die BigQuery-Integration verwendet Google SecOps-Funktionen, um die folgenden Anwendungsfälle zu unterstützen:
Anreicherung mit Threat Intelligence: Sicherheitswarnungen werden automatisch mit Threat Intelligence-Daten angereichert, die in BigQuery gespeichert sind, um den Schweregrad und die Glaubwürdigkeit potenzieller Bedrohungen zu bewerten.
Analyse des Nutzerverhaltens: Identifizieren Sie ungewöhnliche Nutzeraktivitäten, indem Sie in BigQuery gespeicherte historische Logs analysieren, um Insider-Bedrohungen und gehackte Konten zu erkennen.
Analyse von Sicherheits-Data-Lakes: Verwenden Sie die Abfragefunktionen von BigQuery, um große Mengen an Sicherheitsdaten zu analysieren, die aus verschiedenen Quellen zusammengefasst wurden, um die Bedrohungssuche zu verbessern.
Erweiterte ML-/KI-Analysen: Erstellen Sie benutzerdefinierte Modelle für die vorausschauende Abwehr und die automatisierte Risikobewertung mithilfe von historischen Sicherheitsdaten und BigQuery ML.
Langfristige Datenaufbewahrung: Archivieren Sie Daten zu behobenen Vorfällen in BigQuery, um sie kostengünstig langfristig zu speichern und Compliance- und forensische Audits zu unterstützen.
Hinweis
Bevor Sie die BigQuery-Integration in Google SecOps konfigurieren, müssen Sie die folgenden erforderlichen Schritte ausführen:
Weisen Sie Ihrem Dienstkonto die erforderlichen IAM-Rollen (Identity and Access Management) zu.
Wählen Sie eine der folgenden Authentifizierungsmethoden aus und konfigurieren Sie sie:
Option 1: Workload Identity (empfohlen): Bei dieser Methode werden kurzlebige, temporäre Zugriffstokens verwendet, die die Identität des Dienstkontos übernehmen.
Option 2: JSON-Schlüssel für Dienstkonto: Diese Methode basiert auf einer statischen, langlebigen Secret-Schlüsseldatei.
IAM-Rollen zuweisen
Wenn Sie Ihrem Dienstkonto die erforderlichen Berechtigungen gewähren, kann die Integration Jobs ausführen und auf Ihre Daten zugreifen. Die folgenden Standardrollen werden von Google Cloud verwaltet und automatisch aktualisiert, wenn sich die API-Anforderungen ändern. So weisen Sie Ihrem Dienstkonto diese Rollen zu:
Rufen Sie in der Google Cloud Console IAM auf.
Suchen Sie in der Liste der Hauptkonten nach Ihrem Dienstkonto und klicken Sie auf Hauptkonto bearbeiten (Bearbeiten).
Klicken Sie auf Weitere Rolle hinzufügen und wählen Sie Folgendes aus:
BigQuery-Nutzer (
roles/bigquery.user): Ermöglicht der Integration, Jobs, einschließlich Abfragen, im Projekt auszuführen.BigQuery-Datenbetrachter (
roles/bigquery.dataViewer): Ermöglicht der Integration, Daten und Metadaten aus Datasets und Tabellen zu lesen.Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer): Dies ist erforderlich, wenn SieQuota Project IDin den Integrationseinstellungen konfigurieren.
Klicken Sie auf Speichern.
Dienstkonto erstellen
Rufen Sie in der Google Cloud Console IAM und Verwaltung > Dienstkonten auf.
Klicken Sie auf addDienstkonto erstellen.
Geben Sie einen Namen und eine Beschreibung ein und klicken Sie auf Erstellen und fortfahren.
Fügen Sie im Schritt Diesem Dienstkonto Zugriff auf das Projekt erteilen die im vorherigen Schritt ermittelten Rollen hinzu.
Klicken Sie auf Fertig. Notieren Sie sich die E-Mail-Adresse des Dienstkontos.
Workload Identity-Anmeldedaten konfigurieren
Workload Identity ist der empfohlene Ansatz, da hier kurzlebige Zugriffstokens mit Identitätsübernahme des Dienstkontos verwendet werden.
Eindeutige Instanzidentität identifizieren
Zum Herstellen einer Verbindung müssen Sie Ihrer Google SecOps-Instanz die Berechtigung erteilen, die Identität Ihres Dienstkontos zu übernehmen.
Rufen Sie in Google SecOps Content Hub > Antwortintegrationen auf.
Wählen Sie die BigQuery-Integration aus und geben Sie die E-Mail-Adresse Ihres Dienstkontos in das Feld
Workload Identity Emailein.Klicken Sie auf Speichern > Testen. Der Test schlägt erwartungsgemäß fehl.
Klicken Sie neben Test auf den Button close_small und suchen Sie die Identitäts-E-Mail, die mit
gke-init-python@...odersoar-python@...beginnt.Kopieren Sie diese eindeutige E‑Mail-Adresse.
Instanzidentität in Google Cloudautorisieren
Rufen Sie in der Google Cloud Console IAM und Verwaltung > Dienstkonten auf.
Wählen Sie das Zieldienstkonto aus und rufen Sie Berechtigungen > Zugriff gewähren auf.
Fügen Sie die eindeutige E-Mail-Adresse in das Feld Neue Hauptkonten ein und weisen Sie die Rolle Ersteller von Dienstkonto-Tokens (
roles/iam.serviceAccountTokenCreator) zu.
JSON-Schlüssel konfigurieren
Statische, langlebige Secret-Schlüsseldateien müssen manuell rotiert werden. Verwenden Sie diese Methode nur, wenn die Workload Identity-Authentifizierung nicht verfügbar ist.
Rufen Sie in der Google Cloud Console IAM und Verwaltung > Dienstkonten auf und wählen Sie Ihr Dienstkonto aus.
Rufen Sie den Tab Schlüssel auf und klicken Sie auf Schlüssel hinzufügen > Neuen Schlüssel erstellen.
Wählen Sie JSON aus und klicken Sie auf Erstellen. Die Datei wird automatisch auf Ihren Computer heruntergeladen.
Manuelle individuelle Parameter konfigurieren
Wenn Sie die Anmeldedaten manuell eingeben möchten, lassen Sie die heruntergeladene JSON-Schlüsseldatei in einem Texteditor geöffnet, um die einzelnen Werte zu kopieren, die in den Integrationseinstellungen erforderlich sind.
Integrationsparameter
Wenn Sie eine Verbindung zwischen Google SecOps und BigQuery herstellen möchten, müssen Sie die folgenden Parameter konfigurieren. Die Integration unterstützt drei verschiedene Authentifizierungspfade. Wählen Sie eine der folgenden Methoden aus, um Anmeldedaten bereitzustellen.
Workload Identity: Verwendet
Workload Identity EmailundQuota Project ID.JSON-Datei des Dienstkontos: Verwendet
Service Account Json File Content, um den gesamten Schlüssel auf einmal bereitzustellen.Manuelle einzelne Parameter: Verwendet separate Felder, die manuell aus einem JSON-Schlüssel kopiert wurden.
| Parameter | Beschreibung |
|---|---|
API Root |
Optional. Der API-Stamm der BigQuery-Instanz (z. B. |
Workload Identity Email |
Optional. Die Client-E-Mail-Adresse Ihres Dienstkontos. Verwenden Sie diese Option für die Workload Identity-Authentifizierung. |
Service Account Json File Content |
Optional. Der vollständige Inhalt der JSON-Datei des Dienstkontoschlüssels. Wenn Sie diesen Parameter konfigurieren, werden die einzelnen Parameter für Anmeldedaten ignoriert. |
Quota Project ID |
Optional. Die Projekt-ID, die für die API-Nutzung und Abrechnung verwendet wird. Dieser Parameter ist erforderlich, wenn Sie die Workload Identity-Authentifizierung verwenden. |
Project ID |
Optional. Die Projekt-ID, die in BigQuery als Ziel verwendet werden soll. |
Verify SSL |
Pflichtangabe. Validiert das SSL-Zertifikat für die Verbindung. Standardmäßig aktiviert. |
Parameter für einzelne Anmeldedaten
Verwenden Sie die folgenden Parameter nur, wenn Sie Anmeldedaten manuell eingeben, anstatt den vollständigen Inhalt der JSON-Datei oder eine Workload Identity zu verwenden.
| Parameter | Beschreibung |
|---|---|
Account Type |
Optional. Der Wert im Feld |
Private Key ID |
Optional. Der Wert im Feld |
Private Key |
Optional. Der Wert im Feld |
Client Email |
Optional. Der Wert im Feld |
Client ID |
Optional. Der Wert im Feld |
Auth URI |
Optional. Der Wert im Feld Der Standardwert ist |
Token URI |
Optional. Der Wert im Feld Der Standardwert ist |
Auth Provider X509 URL |
Optional. Der Wert im Feld |
Client X509 URL |
Optional. Der Wert im Feld |
Eine Anleitung zum Konfigurieren einer Integration in Google SecOps finden Sie unter Integrationen konfigurieren.
Sie können später bei Bedarf Änderungen vornehmen. Nachdem Sie eine Integrationsinstanz konfiguriert haben, können Sie sie in Playbooks verwenden. Weitere Informationen zum Konfigurieren und Unterstützen mehrerer Instanzen finden Sie unter Mehrere Instanzen unterstützen.
Aktionen
Weitere Informationen zu Aktionen finden Sie unter Auf ausstehende Aktionen im Workdesk reagieren und Manuelle Aktion in einem Fall ausführen.
Ping
Verwenden Sie die Aktion Ping, um die Verbindung zu BigQuery zu testen.
Diese Aktion wird nicht für Google SecOps-Entitäten ausgeführt.
Aktionseingaben
Keine.
Aktionsausgaben
Die Aktion Ping liefert die folgenden Ausgaben:
| Aktionsausgabetyp | Verfügbarkeit |
|---|---|
| Anhang im Fall-Repository | Nicht verfügbar |
| Link zum Fall-Repository | Nicht verfügbar |
| Tabelle mit Fall-Repository | Nicht verfügbar |
| Anreicherungstabelle | Nicht verfügbar |
| JSON-Ergebnis | Nicht verfügbar |
| Ausgabenachrichten | Verfügbar |
| Scriptergebnis | Verfügbar |
Ausgabenachrichten
Die Aktion Ping kann die folgenden Ausgabenachrichten zurückgeben:
| Ausgabemeldung | Beschreibung der Nachricht |
|---|---|
Successfully connected to the Google BigQuery server with
the provided connection parameters! |
Aktion erfolgreich. |
Failed to connect to the Google BigQuery server! Error is
ERROR_REASON |
Aktion fehlgeschlagen. Prüfen Sie die Verbindung zum Server, die Eingabeparameter oder die Anmeldedaten. |
Scriptergebnis
In der folgenden Tabelle ist der Wert für die Ausgabe des Skriptergebnisses bei Verwendung der Aktion Ping aufgeführt:
| Name des Skriptergebnisses | Wert |
|---|---|
is_success |
True oder False |
Benutzerdefinierte Abfrage ausführen
Verwenden Sie die Aktion Benutzerdefinierte Abfrage ausführen, um benutzerdefinierte Abfragen in BigQuery auszuführen.
Diese Aktion wird nicht für Google SecOps-Entitäten ausgeführt.
Aktionseingaben
Für die Aktion Benutzerdefinierte Abfrage ausführen sind die folgenden Parameter erforderlich:
| Parameter | Beschreibung |
|---|---|
Query |
Pflichtangabe. Die auszuführende SQL-Abfrage. |
Max Results To Return |
Optional. Die Anzahl der Ergebnisse, die für jede Antwort zurückgegeben werden sollen. Der Standardwert ist |
Aktionsausgaben
Die Aktion Benutzerdefinierte Abfrage ausführen liefert die folgenden Ausgaben:
| Aktionsausgabetyp | Verfügbarkeit |
|---|---|
| Anhang im Fall-Repository | Nicht verfügbar |
| Link zum Fall-Repository | Nicht verfügbar |
| Tabelle mit Fall-Repository | Nicht verfügbar |
| Anreicherungstabelle | Nicht verfügbar |
| JSON-Ergebnis | Verfügbar |
| Ausgabenachrichten | Verfügbar |
| Scriptergebnis | Verfügbar |
JSON-Ergebnis
Das folgende Beispiel zeigt die JSON-Ergebnisausgabe, die bei Verwendung der Aktion Benutzerdefinierte Abfrage ausführen empfangen wird:
{
"Airport_Code": "CODE",
"Airport_Name": "NAME",
"Time_Label": "2015/05",
"Time_Month": 5,
"Time_Month_Name": "May",
"Time_Year": 2015,
"Statistics___of_Delays_Carrier": 351,
"Statistics___of_Delays_Late_Aircraft": 546,
"Statistics___of_Delays_National_Aviation_System": 292,
"Statistics___of_Delays_Security": 2,
"Statistics___of_Delays_Weather": 100,
"Statistics_Carriers_Names": "Example Air Lines Inc., Example Airlines Co.",
"Statistics_Carriers_Total": 3,
"Statistics_Flights_Cancelled": 88,
"Statistics_Flights_Delayed": 1289,
"Statistics_Flights_Diverted": 32,
"Statistics_Flights_On_Time": 6182,
"Statistics_Flights_Total": 7591,
"Statistics_Minutes_Delayed_Carrier": 19332,
"Statistics_Minutes_Delayed_Late_Aircraft": 34376,
"Statistics_Minutes_Delayed_National_Aviation_System": 12346,
"Statistics_Minutes_Delayed_Security": 48,
"Statistics_Minutes_Delayed_Total": 76163,
"Statistics_Minutes_Delayed_Weather": 100061
}
Ausgabenachrichten
Die Aktion Benutzerdefinierte Abfrage ausführen kann die folgenden Ausgabenachrichten zurückgeben:
| Ausgabemeldung | Beschreibung der Nachricht |
|---|---|
Successfully executed query in Google BigQuery! |
Aktion erfolgreich. |
Error executing action "Run Custom Query". Reason:
ERROR_REASON |
Aktion fehlgeschlagen. Prüfen Sie die Verbindung zum Server, die Eingabeparameter oder die Anmeldedaten. |
Scriptergebnis
In der folgenden Tabelle sind die Werte für die Ausgabe des Skriptergebnisses aufgeführt, wenn die Aktion Benutzerdefinierte Abfrage ausführen verwendet wird:
| Name des Skriptergebnisses | Wert |
|---|---|
is_success |
True oder False |
SQL-Abfrage ausführen
Verwenden Sie die Aktion SQL-Abfrage ausführen, um Abfragen in BigQuery auszuführen.
Diese Aktion wird nicht für Google SecOps-Entitäten ausgeführt.
Aktionseingaben
Für die Aktion SQL-Abfrage ausführen sind die folgenden Parameter erforderlich:
| Parameter | Beschreibung |
|---|---|
Dataset Name |
Pflichtangabe. Der Name des Datasets, das beim Ausführen von Abfragen verwendet werden soll. |
Query |
Pflichtangabe. Die auszuführende SQL-Abfrage. |
Max Results To Return |
Optional. Die Anzahl der Ergebnisse, die für jede Antwort zurückgegeben werden sollen. Der Standardwert ist |
Aktionsausgaben
Die Aktion SQL-Abfrage ausführen liefert die folgenden Ausgaben:
| Aktionsausgabetyp | Verfügbarkeit |
|---|---|
| Anhang im Fall-Repository | Nicht verfügbar |
| Link zum Fall-Repository | Nicht verfügbar |
| Tabelle mit Fall-Repository | Nicht verfügbar |
| Anreicherungstabelle | Nicht verfügbar |
| JSON-Ergebnis | Nicht verfügbar |
| Ausgabenachrichten | Verfügbar |
| Scriptergebnis | Verfügbar |
JSON-Ergebnis
Im folgenden Beispiel wird die JSON-Ergebnisausgabe beschrieben, die Sie bei Verwendung der Aktion SQL-Abfrage ausführen erhalten:
{
"Airport_Code": "CODE",
"Airport_Name": "NAME",
"Time_Label": "2015/05",
"Time_Month": 5,
"Time_Month_Name": "May",
"Time_Year": 2015,
"Statistics___of_Delays_Carrier": 351,
"Statistics___of_Delays_Late_Aircraft": 546,
"Statistics___of_Delays_National_Aviation_System": 292,
"Statistics___of_Delays_Security": 2,
"Statistics___of_Delays_Weather": 100,
"Statistics_Carriers_Names": "Example Airlines Inc.,Example Airlines Co.",
"Statistics_Carriers_Total": 3,
"Statistics_Flights_Cancelled": 88,
"Statistics_Flights_Delayed": 1289,
"Statistics_Flights_Diverted": 32,
"Statistics_Flights_On_Time": 6182,
"Statistics_Flights_Total": 7591,
"Statistics_Minutes_Delayed_Carrier": 19332,
"Statistics_Minutes_Delayed_Late_Aircraft": 34376,
"Statistics_Minutes_Delayed_National_Aviation_System": 12346,
"Statistics_Minutes_Delayed_Security": 48,
"Statistics_Minutes_Delayed_Total": 76163,
"Statistics_Minutes_Delayed_Weather": 100061
}
Ausgabenachrichten
Die Aktion SQL-Abfrage ausführen kann die folgenden Ausgabenachrichten zurückgeben:
| Ausgabemeldung | Beschreibung der Nachricht |
|---|---|
Successfully executed query in the BigQuery dataset
DATASET_NAME. |
Aktion erfolgreich. |
Error executing action "Run SQL Query". Reason:
ERROR_REASON |
Aktion fehlgeschlagen. Prüfen Sie die Verbindung zum Server, die Eingabeparameter oder die Anmeldedaten. |
Scriptergebnis
In der folgenden Tabelle ist der Wert für die Ausgabe des Skriptergebnisses aufgeführt, wenn die Aktion SQL-Abfrage ausführen verwendet wird:
| Name des Skriptergebnisses | Wert |
|---|---|
is_success |
True oder False |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten