BigQuery in Google SecOps einbinden
In diesem Dokument wird beschrieben, wie Sie BigQuery in Google Security Operations einbinden.
Anwendungsfälle
Bei der BigQuery-Integration werden Google SecOps-Funktionen für die folgenden Anwendungsfälle verwendet:
Anreicherung mit Threat Intelligence: Sicherheitswarnungen werden automatisch mit Threat Intelligence-Daten angereichert, die in BigQuery gespeichert sind, um die Schwere und Glaubwürdigkeit potenzieller Bedrohungen zu bewerten.
Analyse des Nutzerverhaltens: Analysieren Sie in BigQuery gespeicherte Verlaufslogs, um anomale Nutzeraktivitäten zu erkennen und Insider-Bedrohungen und kompromittierte Konten zu ermitteln.
Analyse des Security Data Lake: Mit den Abfragefunktionen von BigQuery können Sie große Mengen an Sicherheitsdaten analysieren, die aus verschiedenen Quellen zusammengeführt wurden, um die Suche nach Bedrohungen zu verbessern.
Erweiterte ML-/KI-Analysen: Erstellen Sie benutzerdefinierte Modelle für die vorausschauende Abwehr und die automatisierte Risikobewertung mit 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 Voraussetzungen erfüllen:
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 mithilfe der Identitätsübertragung von Dienstkonten verwendet.
Option 2: JSON-Schlüssel des Dienstkontos: Bei dieser Methode wird eine statische, langlebige Secret-Schlüsseldatei verwendet.
IAM-Rollen zuweisen
Wenn Sie Ihrem Dienstkonto die erforderlichen Berechtigungen erteilen, 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, innerhalb des Projekts auszuführen.BigQuery Data Viewer (
roles/bigquery.dataViewer): Ermöglicht der Integration, Daten und Metadaten aus Datasets und Tabellen zu lesen.Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer): Diese Rolle ist erforderlich, wenn SieQuota Project IDin den Integrationseinstellungen konfigurieren.
Klicken Sie auf Speichern.
Dienstkonto erstellen
Wechseln Sie in der Google Cloud Console zu IAM & Verwaltung > Dienstkonten.
Klicken Sie auf HinzufügenDienstkonto 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 mithilfe der Identitätsübernahme des Dienstkontos verwendet werden.
Eindeutige Instanzidentität ermitteln
Zum Herstellen einer Verbindung müssen Sie Ihrer Google SecOps-Instanz die Berechtigung erteilen, die Identität Ihres Dienstkontos zu übernehmen.
Gehen Sie in Google SecOps zu Content Hub > Response Integrations.
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 > Test. Der Test wird voraussichtlich fehlschlagen.
Klicken Sie neben Test auf das Symbol close_small und suchen Sie nach der Identitäts-E-Mail-Adresse, die mit
gke-init-python@...odersoar-python@...beginnt.Kopieren Sie diese eindeutige E-Mail-Adresse.
Instanzidentität in Google Cloudautorisieren
Wechseln Sie in der Google Cloud Console zu IAM & Verwaltung > Dienstkonten.
Wählen Sie das Zieldienstkonto aus und gehen Sie zu Berechtigungen > Zugriff gewähren.
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 Dateien mit geheimen Schlüsseln 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 die Seite IAM & 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 anzugeben.
Workload Identity: Verwendet
Workload Identity EmailundQuota Project ID.JSON-Datei des Dienstkontos: Hier wird
Service Account Json File Contentverwendet, um den gesamten Schlüssel auf einmal bereitzustellen.Manuelle einzelne Parameter: Hier werden separate Felder verwendet, 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. Wird für die Workload Identity-Authentifizierung verwendet. |
Service Account Json File Content |
Optional. Der vollständige Inhalt der JSON-Datei des Dienstkontoschlüssels. Wenn Sie diesen Parameter konfigurieren, werden einzelne Anmeldedatenparameter von der Integration 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 |
Erforderlich. Überprüft das SSL-Zertifikat für die Verbindung. Standardmäßig aktiviert. |
Parameter für individuelle Anmeldedaten
Verwenden Sie die folgenden Parameter nur, wenn Sie Anmeldedaten manuell eingeben und nicht den vollständigen Inhalt der JSON-Datei oder eine Workload Identity verwenden.
| Parameter | Beschreibung |
|---|---|
Account Type |
Optional. Der Wert im Feld |
Private Key ID |
Optional. Der Wert, der im Feld |
Private Key |
Optional. Der Wert, der im Feld |
Client Email |
Optional. Der Wert, der im Feld |
Client ID |
Optional. Der Wert, der im Feld |
Auth URI |
Optional. Der Wert, der im Feld Der Standardwert ist |
Token URI |
Optional. Der Wert, der im Feld Der Standardwert ist |
Auth Provider X509 URL |
Optional. Der Wert, der im Feld |
Client X509 URL |
Optional. Der Wert, der im Feld |
Eine Anleitung zum Konfigurieren einer Integration in Google SecOps finden Sie unter Integrationen konfigurieren.
Bei Bedarf können Sie später Ä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 Ausstehende Aktionen über „Mein Arbeitsbereich“ bearbeiten und Manuelle Maßnahme 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 bietet die folgenden Ausgaben:
| Ausgabetyp der Aktion | Verfügbarkeit |
|---|---|
| Anhang im Fall-Repository | Nicht verfügbar |
| Link zum Fall‑Repository | Nicht verfügbar |
| Tabelle „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 | Nachrichtenbeschreibung |
|---|---|
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. Überprü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 Scriptergebnisses | Wert |
|---|---|
is_success |
True oder False |
Benutzerdefinierte Abfrage ausführen
Mit der Aktion Benutzerdefinierte Abfrage ausführen können Sie benutzerdefinierte Abfragen in BigQuery ausfü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 |
Erforderlich. Die auszuführende SQL-Abfrage. |
Max Results To Return |
Optional. Die Anzahl der Ergebnisse, die für jede Antwort zurückgegeben werden. Der Standardwert ist |
Aktionsausgaben
Die Aktion Benutzerdefinierte Abfrage ausführen bietet die folgenden Ausgaben:
| Ausgabetyp der Aktion | Verfügbarkeit |
|---|---|
| Anhang im Fall-Repository | Nicht verfügbar |
| Link zum Fall‑Repository | Nicht verfügbar |
| Tabelle „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 | Nachrichtenbeschreibung |
|---|---|
Successfully executed query in Google BigQuery! |
Aktion erfolgreich. |
Error executing action "Run Custom Query". Reason:
ERROR_REASON |
Aktion fehlgeschlagen. Überprü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 Benutzerdefinierte Abfrage ausführen verwendet wird:
| Name des Scriptergebnisses | Wert |
|---|---|
is_success |
True oder False |
SQL-Abfrage ausführen
Mit der Aktion SQL-Abfrage ausführen können Sie Abfragen in BigQuery ausfü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 |
Erforderlich. Der Name des Datasets, das beim Ausführen von Abfragen verwendet werden soll. |
Query |
Erforderlich. Die auszuführende SQL-Abfrage. |
Max Results To Return |
Optional. Die Anzahl der Ergebnisse, die für jede Antwort zurückgegeben werden. Der Standardwert ist |
Aktionsausgaben
Die Aktion SQL-Abfrage ausführen bietet die folgenden Ausgaben:
| Ausgabetyp der Aktion | Verfügbarkeit |
|---|---|
| Anhang im Fall-Repository | Nicht verfügbar |
| Link zum Fall‑Repository | Nicht verfügbar |
| Tabelle „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 bei Verwendung der Aktion SQL-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 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 Ausgabemeldungen zurückgeben:
| Ausgabemeldung | Nachrichtenbeschreibung |
|---|---|
Successfully executed query in the BigQuery dataset
DATASET_NAME. |
Aktion erfolgreich. |
Error executing action "Run SQL Query". Reason:
ERROR_REASON |
Aktion fehlgeschlagen. Überprü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 Scriptergebnisses | Wert |
|---|---|
is_success |
True oder False |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten