KI-gestützte benutzerdefinierte Grapherstellung in Microsoft Sentinel (Vorschau)

Verwenden Sie GitHub Copilot in Visual Studio Code mit Microsoft Sentinel, um benutzerdefinierte Sicherheitsdiagramme mit Jupyter Notebooks zu erstellen, zu ändern und abzufragen. Beschreiben Sie, was Sie in natürlicher Sprache erstellen möchten, überprüfen Sie das generierte Notebook, und verfeinern Sie es nach Bedarf.

Verwenden Sie Copilot für verschiedene Grapherstellungsaufgaben, einschließlich:

  • Erstellen Sie ein vollständiges Notebook zum Erstellen von Graphen anhand einer Beschreibung
  • Ändern oder Debuggen eines vorhandenen Graphen
  • Generierten Graphcode verstehen
  • Schreiben und Ausführen von Graphabfragen

Funktionsweise der KI-Unterstützung für benutzerdefinierte Diagramme

Wenn Sie in einem mit Microsoft Sentinel verbundenen Jupyter-Notebook arbeiten, kann GitHub Copilot mithilfe natürlichsprachlicher Anweisungen bei Aufgaben zur Erstellung von Graphen helfen.

Verwenden Sie den folgenden Workflow, um mit Copilot für die Grapherstellung zu interagieren:

  1. Beschreiben Sie das Diagramm oder die Änderung, die Sie vornehmen möchten.
  2. Copilot generiert oder aktualisiert graphbezogenen Code.
  3. Sie überprüfen, führen aus und überarbeiten die Ergebnisse iterativ.

Für graphspezifische Szenarien stellt Microsoft Sentinel optionale Hilfsprogramme bereit, die Copilot zusätzlichen Kontext zu Graph-APIs, Schemas und Ihrem Arbeitsbereich bieten. Diese Hilfsmittel verbessern die Genauigkeit und Konsistenz, sind jedoch keine Voraussetzung, um die Unterstützung durch Copilot zu nutzen.

Voraussetzungen

Bevor Sie beginnen, sollten Sie sicherstellen, dass Sie über Folgendes verfügen:

Erstellen und Bearbeiten eines benutzerdefinierten Graphen mit Copilot

Führen Sie die folgenden Schritte aus, um mithilfe von GitHub Copilot ein neues Diagramm zu erstellen oder ein vorhandenes Diagramm zu ändern:

  1. Öffnen Sie ein vorhandenes Jupyter Notebook (.ipynb), oder erlauben Sie Copilot, eines zu erstellen.

  2. Öffnen Sie GitHub Copilot Chat (STRG+UMSCHALT+I unter Windows, BEFEHLSTASTE+UMSCHALT+I unter macOS).

  3. Beschreiben Sie den Graphen, den Sie erstellen möchten.

Um optimale Ergebnisse beim Erstellen oder Ändern eines vollständigen Graphen zu erzielen, verwenden Sie das Sentinel Hilfsprogramm zur Erstellung von Diagrammen, indem Sie in Ihre Eingabeaufforderung einschließen@sentinel /graph-authoring. Dies bietet Copilot zusätzlichen Kontext zu Graph-APIs, Schemas und bewährten Methoden.

@sentinel /graph-authoring Create a graph that maps email senders to recipients and URLs using EmailEvents

Der Assistent generiert ein vollständiges Notebook, das dem standardisierten Lebenszyklus der Erstellung von Graphen folgt:

Schritt Beschreibung
Einrichtung der Umgebung Überprüft erforderliche Pakete und Verbindungsinformationen
Laden von Daten Liest Tabellen aus dem Sentinel Data Lake
Datentransformation Bereitet Knoten- und Kantendaten vor
Diagrammschema Definiert Knoten und Kanten
Schemaüberprüfung Überprüft die Graphdefinition.
Graph-Erstellung Materialisiert das Diagramm
Graphenabfrage Ausführen von Graphabfragen

Verfeinern des Diagramms

Nachdem das Diagramm erstellt wurde, können Sie die Konversation fortsetzen, um sie zu verfeinern, z. B.:

@sentinel Add an edge from User to IPAddress
@sentinel Filter the data to show only failed sign-ins

Ändern oder Debuggen eines vorhandenen Graphen

Bitten Sie Copilot, bestimmte Teile Ihres Notebooks zu aktualisieren oder zu beheben. Sie können beispielsweise Filter ändern, Spalten anpassen oder Buildfehler beheben:

@sentinel Change the time range to the last 7 days

Die folgende Eingabeaufforderung fordert Copilot auf, eine bestimmte Notizbuchzelle zu ändern, indem sie der Ausgabe ein Feld hinzufügt:

@sentinel Update cell 3 to include the Subject column

Die folgende Aufforderung fordert Copilot auf, einen Fehler in der Graph-Buildphase zu beheben und zu reparieren:

@sentinel Fix the error in the graph build step

Nur die betroffenen Zellen werden aktualisiert. Andere Zellen bleiben unverändert.

Grundlegendes zu Graphcode und Abfragen

Stellen Sie Fragen zum generierten Code, ohne das Notebook zu ändern. Die folgende Eingabeaufforderung fordert z. B. Copilot auf, den Zweck einer bestimmten Graph-API-Hilfsmethode zu erläutern:

@sentinel What does show_schema() do?

Der folgende Prompt bittet Copilot um Klärung, wie Edgeschlüssel in Sentinel-Graphenschemas modelliert werden:

@sentinel Explain how edge keys are defined

Die folgende Eingabeaufforderung fordert Copilot auf, die Logik einer Diagrammabfrage schritt für Schritt zu erläutern:

@sentinel How does this graph query work?

Nachschlagen von Graph-APIs und Beispielen

Wenn Sie Hilfe bei Sentinel Graph-APIs, Methodenparametern oder Beispielabfragen benötigen, können Sie Copilot um Erläuterungen bitten. Um genauere, Sentinel-spezifische Antworten zu erhalten, fügen Sie die #Sentinel Referenzhilfe in Ihren Prompt ein. Zum Beispiel bittet der folgende Prompt Copilot um Informationen im Referenzstil zur Signatur der Methode build_graph_with_data():

What parameters does build_graph_with_data() accept? #sentinel

Im folgenden Beispiel wird Copilot aufgefordert, eine Graph-Traversalabfrage zwischen zwei Entitätstypen zu generieren:

Write a graph query to find all paths between User and IPAddress #sentinel

Dieses Hilfsprogramm stellt Copilot autoritative Sentinel Graph-API-Dokumentation zur Verfügung. Das #sentinel Referenzhilfsprogramm ändert Ihr Notizbuch nicht.

Wählen Sie aus, wie Sie mit Copilot interagieren möchten

Verwenden Sie die folgende Tabelle, um die beste Methode für die Interaktion mit Copilot basierend auf Ihrem Ziel auszuwählen:

Was Sie tun möchten Empfohlener Ansatz
Erstellen oder Ändern eines Graphnotebooks Beschreiben Ihres Ziels (verwendung @sentinel für optimale Ergebnisse)
Beheben oder Debuggen eines Diagrammfehlers Beschreiben des Problems (verwenden Sie @sentinel)
Fragen zu Graph-APIs oder Parametern Stellen Sie eine Frage (mit #sentinel)
Eine allgemeine Frage stellen Einfacher Copilot-Prompt

Zentrale Konzepte

Die folgenden Konzepte sind wichtig zu verstehen, wenn KI-unterstützte Diagrammerstellung verwendet wird.

Verfügbarkeit von Arbeitsbereichen und Tabellen

Bei der KI-Unterstützung werden die Tabellen verwendet, die in Ihrem Sentinel Data Lake sichtbar sind. Nur Tabellen, auf die Sie Zugriff haben, werden in generiertem Code verwendet.

Wichtig

Wenn eine Tabelle nicht im Data Lake-Explorer angezeigt wird, kann sie nicht für die Grapherstellung verwendet werden.

Notebook-Änderungen

Beim Ändern eines Notebooks werden nur die Zellen aktualisiert, die geändert werden müssen. Sie können Änderungen mithilfe von Rückgängig-Befehlen im Standard-Editor rückgängigmachen.

Problembehandlung

In der folgenden Tabelle sind häufige Probleme und deren Behebung aufgeführt.

Problem Lösung
Kein Notizbuch ist geöffnet Öffnen oder erstellen Sie eine .ipynb Datei, bevor Sie mit der Grapherstellung beginnen.
Tabellen fehlen Vergewissern Sie sich, dass Ihr Sentinel Data Lake verbunden ist und die erwarteten Tabellen im Data Lake-Explorer angezeigt werden.
Erforderliche Pakete fehlen Stellen Sie sicher, dass Ihr Notebook mit einem unterstützten Sentinel Spark-Computepool verbunden ist.
Eine unerwartete Zelle wurde geändert. Machen Sie die Änderung rückgängig und versuchen Sie die Anforderung erneut, indem Sie die Nummer der Zelle angeben.