Création de graphiques personnalisés assistés par l’IA dans Microsoft Sentinel (préversion)

Utilisez GitHub Copilot dans Visual Studio Code avec Microsoft Sentinel pour créer, modifier et interroger des graphiques de sécurité personnalisés à l’aide de notebooks Jupyter. Décrivez ce que vous souhaitez créer en langage naturel, passez en revue le notebook généré et affinez-le si nécessaire.

Utilisez Copilot pour diverses tâches de création de graphiques, notamment :

  • Créer un bloc-notes de création de graphique complet à partir d’une description
  • Modifier ou déboguer un graphique existant
  • Comprendre le code de graphe généré
  • Écrire et exécuter des requêtes graphiques

Fonctionnement de l’assistance PAR IA pour les graphiques personnalisés

Lorsque vous travaillez dans un notebook Jupyter connecté à Microsoft Sentinel, GitHub Copilot pouvez vous aider à effectuer des tâches de création de graphiques à l’aide d’invites en langage naturel.

Utilisez le workflow suivant pour interagir avec Copilot pour la création de graphiques :

  1. Décrivez le graphique ou la modification que vous souhaitez apporter.
  2. Copilot génère ou met à jour le code lié au graphique.
  3. Vous passez en revue, exécutez et effectuez une itération sur les résultats.

Pour les scénarios spécifiques au graphique, Microsoft Sentinel fournit des assistances facultatives qui donnent à Copilot un contexte supplémentaire sur les API de graphe, les schémas et votre espace de travail. Ces assistances améliorent la précision et la cohérence, mais ne sont pas nécessaires pour utiliser l’assistance Copilot.

Configuration requise

Avant de commencer, vérifiez que vous disposez des points suivants :

Créer et modifier un graphe personnalisé avec Copilot

Procédez comme suit pour créer un graphe ou modifier un graphique existant à l’aide de GitHub Copilot :

  1. Ouvrez un notebook Jupyter existant (.ipynb) ou autorisez Copilot à en créer un.

  2. Ouvrez GitHub Copilot Conversation (Ctrl+Maj+I sur Windows, Cmd+Maj+I sur macOS).

  3. Décrivez le graphique que vous souhaitez générer.

Pour obtenir de meilleurs résultats lors de la création ou de la modification d’un graphique complet, utilisez l’assistance Sentinel création de graphe en y incluant @sentinel /graph-authoring dans votre invite. Cela fournit à Copilot un contexte supplémentaire sur les API de graphe, les schémas et les meilleures pratiques.

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

Le assistant génère un notebook complet qui suit le cycle de vie de création de graphe standard :

Étape Description
Configuration de l’environnement Vérifie les packages requis et les informations de connexion
Chargement des données Lit les tables du lac de données Sentinel
Transformation des données Prépare les données de nœud et de périphérie
Schéma de graphe Définit les nœuds et les arêtes
Validation de schéma Valide la définition du graphique
Génération de graphe Matérialise le graphe
Requête de graphe Exécute des requêtes de graphe

Affiner le graphe

Une fois le graphique créé, vous pouvez continuer la conversation pour l’affiner, par exemple :

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

Modifier ou déboguer un graphique existant

Demandez à Copilot de mettre à jour ou de corriger des parties spécifiques de votre notebook. Par exemple :

@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

Seules les cellules affectées sont mises à jour. Les autres cellules restent inchangées.

Comprendre le code et les requêtes de graphe

Posez des questions sur le code généré sans modifier le notebook. Par exemple :

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

Rechercher des API de graphe et des exemples

Si vous souhaitez obtenir de l’aide sur les API de graphe Sentinel, les paramètres de méthode ou les exemples de requêtes, vous pouvez demander des explications à Copilot. Pour obtenir des réponses plus précises Sentinel spécifiques, incluez l’assistance #Sentinel de référence dans votre invite. Par exemple :

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

Cette assistance fournit à Copilot une documentation faisant autorité sur l’API Sentinel graph. Il ne modifie pas votre bloc-notes.

Choisir comment interagir avec Copilot

Utilisez le tableau suivant pour choisir la meilleure façon d’interagir avec Copilot en fonction de votre objectif :

Ce que vous voulez faire Approche recommandée
Créer ou modifier un bloc-notes de graphique Décrire votre objectif (à utiliser @sentinel pour obtenir de meilleurs résultats)
Corriger ou déboguer une erreur de graphique Décrire le problème (utiliser @sentinel)
Poser des questions sur les API de graphe ou les paramètres Poser une question (inclure #sentinel)
Poser une question d’ordre général Requête Copilot simple

Concepts clés

Disponibilité de l’espace de travail et de la table

L’assistance ia utilise les tables visibles dans votre lac de données Sentinel. Seules les tables à laquelle vous avez accès sont utilisées dans le code généré.

Importante

Si une table n’apparaît pas dans Data Lake Explorer, elle ne peut pas être utilisée pour la création de graphiques.

Modifications du bloc-notes

Lors de la modification d’un notebook, seules les cellules qui doivent être modifiées sont mises à jour. Vous pouvez annuler les modifications à l’aide des commandes d’annulation de l’éditeur standard.

Résolution des problèmes

Problème Résolution
Aucun bloc-notes n’est ouvert Ouvrez ou créez un .ipynb fichier avant de commencer la création de graphiques.
Les tables sont manquantes Vérifiez que votre Sentinel data lake est connecté et que les tables attendues s’affichent dans l’explorateur de lac de données.
Les packages requis sont manquants Vérifiez que votre notebook est connecté à un pool de calcul Spark Sentinel pris en charge.
Une cellule inattendue a été modifiée Annulez la modification et réessayez la demande en spécifiant le numéro de cellule.