Creazione di grafici personalizzati assistiti dall'intelligenza artificiale in Microsoft Sentinel (anteprima)

Usare GitHub Copilot in Visual Studio Code con Microsoft Sentinel per creare, modificare ed eseguire query su grafici di sicurezza personalizzati usando notebook Jupyter. Descrivere ciò che si vuole compilare in linguaggio naturale, esaminare il notebook generato e affinarlo in base alle esigenze.

Usare Copilot per varie attività di creazione di grafici, tra cui:

  • Creare un notebook di creazione di grafi completo da una descrizione
  • Modificare o eseguire il debug di un grafico esistente
  • Informazioni sul codice del grafo generato
  • Scrivere ed eseguire query a grafo

Funzionamento dell'assistenza per l'intelligenza artificiale per i grafici personalizzati

Quando si lavora in un notebook di Jupyter connesso a Microsoft Sentinel, GitHub Copilot può essere utile per le attività di creazione di grafi tramite prompt in linguaggio naturale.

Usare il flusso di lavoro seguente per interagire con Copilot per la creazione di grafici:

  1. Descrivere il grafico o la modifica che si vuole apportare.
  2. Copilot genera o aggiorna il codice correlato al grafo.
  3. Esaminare, eseguire ed eseguire l'iterazione sui risultati.

Per gli scenari specifici del grafo, Microsoft Sentinel fornisce helper facoltativi che forniscono a Copilot un contesto aggiuntivo sulle API, gli schemi e l'area di lavoro del grafo. Questi helper migliorano l'accuratezza e la coerenza, ma non sono necessari per usare l'assistenza Copilot.

Prerequisiti

Prima di iniziare, eseguire le operazioni seguenti:

Creare e modificare un grafico personalizzato con Copilot

Usare la procedura seguente per creare un nuovo grafico o modificarne uno esistente usando GitHub Copilot:

  1. Aprire un notebook di Jupyter esistente (.ipynb) o consentire a Copilot di crearne uno.

  2. Aprire GitHub Copilot chat (CTRL+MAIUSC+I in Windows, Cmd+Maiusc+I in macOS).

  3. Descrivere il grafico che si vuole compilare.

Per ottenere risultati ottimali durante la creazione o la modifica di un grafo completo, usare l'helper di creazione del grafo Sentinel includendo @sentinel /graph-authoring nel prompt. In questo modo Copilot offre un contesto aggiuntivo sulle API grafo, gli schemi e le procedure consigliate.

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

Il assistente genera un notebook completo che segue il ciclo di vita di creazione standard del grafo:

Passaggio Descrizione
Configurazione dell'ambiente Verifica i pacchetti necessari e le informazioni di connessione
Caricamento dei dati Legge le tabelle dal data lake Sentinel
Trasformazione dei dati Prepara i dati dei nodi e dei dispositivi perimetrali
Schema del grafo Definisce nodi e archi
Convalida dello schema Convalida la definizione del grafo
Compilazione di grafi Materializza il grafo
Query a grafo Esegue query a grafo

Perfezionare il grafo

Dopo aver creato il grafico, è possibile continuare la conversazione per affinarlo, ad esempio:

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

Modificare o eseguire il debug di un grafico esistente

Chiedere a Copilot di aggiornare o correggere parti specifiche del notebook. Ad esempio:

@sentinel Change the time range to the last 7 days
@sentinel Update cell 3 to include the Subject column
@sentinel Fix the error in the graph build step

Vengono aggiornate solo le celle interessate. Altre celle rimangono invariate.

Informazioni sul codice del grafo e sulle query

Porre domande sul codice generato senza modificare il notebook. Ad esempio:

@sentinel What does show_schema() do?
@sentinel Explain how edge keys are defined
@sentinel How does this graph query work?

Cercare le API e gli esempi dei grafici

Se si desidera assistenza per Sentinel API graph, parametri del metodo o query di esempio, è possibile chiedere spiegazioni a Copilot. Per risposte più accurate e specifiche Sentinel, includere l'helper #Sentinel di riferimento nel prompt. Ad esempio:

What parameters does build_graph_with_data() accept? #sentinel
Write a graph query to find all paths between User and IPAddress #sentinel

Questo helper fornisce a Copilot la documentazione autorevole dell'API graph Sentinel. Non modifica il notebook.

Scegliere come interagire con Copilot

Usare la tabella seguente per scegliere il modo migliore per interagire con Copilot in base all'obiettivo:

Cosa si vuole fare Approccio consigliato
Creare o modificare un notebook a grafo Descrivere l'obiettivo (usare @sentinel per ottenere risultati ottimali)
Correggere o eseguire il debug di un errore del grafo Descrivere il problema (usare @sentinel)
Domande su API o parametri del grafico Porre una domanda (includere #sentinel)
Porre una domanda generale Prompt di Copilot normale

Concetti principali

Disponibilità di aree di lavoro e tabelle

L'assistenza per l'intelligenza artificiale usa le tabelle visibili nel data lake Sentinel. Solo le tabelle a cui si ha accesso vengono usate nel codice generato.

Importante

Se una tabella non viene visualizzata in Esplora data lake, non può essere usata per la creazione di grafici.

Modifiche al notebook

Quando si modifica un notebook, vengono aggiornate solo le celle che devono essere modificate. È possibile annullare le modifiche usando i comandi di annullamento dell'editor standard.

Risoluzione dei problemi

Problema Risoluzione
Nessun notebook aperto Aprire o creare un .ipynb file prima di iniziare la creazione di grafi.
Tabelle mancanti Verificare che il data lake Sentinel sia connesso e che le tabelle previste vengano visualizzate in Esplora data lake.
I pacchetti obbligatori sono mancanti Assicurarsi che il notebook sia connesso a un pool di calcolo Spark Sentinel supportato.
Una cella imprevista è stata modificata Annullare la modifica e ripetere la richiesta, specificando il numero di cella.