Ressources pour la création de connecteurs Microsoft Sentinel personnalisés
Microsoft Sentinel fournit une large gamme de connecteurs prêts à l’emploi pour les services Azure et les solutions externes, et prend également en charge l’ingestion de données à partir de certaines sources sans connecteur dédié.
Si vous ne parvenez pas à connecter votre source de données à Microsoft Sentinel en utilisant l’une des solutions existantes disponibles, envisagez de créer votre propre connecteur de source de données.
Pour obtenir la liste complète des connecteurs pris en charge, consultez Rechercher votre connecteur de données Microsoft Sentinel.
Comparer les méthodes de connecteur personnalisé
Le tableau suivant compare les détails essentiels de chaque méthode de création de connecteurs personnalisés décrite dans cet article. Sélectionnez les liens dans le tableau pour obtenir plus d’informations sur chaque méthode.
Description de la méthode | Fonctionnalité | Sans serveur | Complexité |
---|---|---|---|
Plateforme de connecteurs sans code (CCP) Idéale pour les audiences moins spécialisées pour créer des connecteurs SaaS à l’aide d’un fichier config au lieu d’un développement avancé. |
Prend en charge toutes les capacités disponibles avec le code. | Oui | Faible ; développement simple et sans code |
Agent Azure Monitor Idéale pour collecter des fichiers à partir de sources locales et IaaS |
Collecte de fichiers, transformation de données | Non | Faible |
Logstash Idéale pour les sources locales et IaaS, toute source pour laquelle un plug-in est disponible et les organisations qui connaissent déjà Logstash |
Prend en charge toutes les fonctionnalités de l’agent Azure Monitor | Non ; nécessite l’exécution d’une machine virtuelle ou d’un cluster de machines virtuelles | Faible ; prend en charge de nombreux scénarios avec des plug-ins |
Logic Apps Coût élevé ; à éviter pour les grandes quantités de données Idéale pour les sources cloud à faible volume |
La programmation sans code offre une flexibilité limitée, sans prise en charge de l’implémentation des algorithmes. Si aucune action disponible ne répond déjà à vos besoins, la création d’une action personnalisée peut ajouter une certaine complexité. |
Oui | Faible ; développement simple et sans code |
PowerShell Idéale pour le prototypage et les chargements de fichiers périodiques |
Prise en charge directe pour la collecte de fichiers. PowerShell peut être utilisé pour collecter davantage de sources, mais nécessitera le codage et la configuration du script en tant que service. |
Non | Faible |
API Log Analytics Idéale pour les éditeurs de logiciels indépendants qui implémentent l’intégration et pour les exigences uniques de collecte |
Prend en charge toutes les capacités disponibles avec le code. | Dépend de l’implémentation | Élevé |
Azure Functions Idéale pour les sources cloud à volume élevé et pour les exigences uniques de collecte |
Prend en charge toutes les capacités disponibles avec le code. | Oui | Élevé ; nécessite des connaissances en programmation |
Conseil
Pour comparer l’utilisation de Logic Apps et d’Azure Functions pour le même connecteur, consultez :
- Ingérer rapidement les journaux Web Application Firewall dans Microsoft Sentinel
- Office 365 (communauté Microsoft Sentinel GitHub) : Connecteur d’applications logique | Connecteur de fonction Azure
Se connecter avec la plateforme de connecteurs sans code
La plateforme de connecteurs sans code (CCP) fournit un fichier config qui peut être utilisé par les clients et les partenaires, puis déployé dans votre propre espace de travail ou en tant que solution dans la galerie de solutions de Microsoft Sentinel.
Les connecteurs créés à l’aide de la CCP sont entièrement SaaS, sans aucune exigence en matière d’installation de service, et comprennent également un monitoring de l’intégrité et une assistance complète fournis par Microsoft Sentinel.
Pour plus d’informations, consultez Créer un connecteur sans code pour Microsoft Sentinel.
Se connecter à l’agent Azure Monitor
Si votre source de données fournit des événements dans des fichiers texte, nous vous recommandons d’utiliser l’agent Azure Monitor pour créer votre connecteur personnalisé.
Pour plus d’informations, consultez Collecter des journaux à partir d’un fichier texte avec l’agent Azure Monitor.
Pour obtenir un exemple de cette méthode, consultez Collecter des journaux à partir d’un fichier JSON avec l’agent Azure Monitor.
Se connecter avec Logstash
Si vous connaissez Logstash, vous pouvez utiliser cette solution avec le plug-in de sortie Logstash pour Microsoft Sentinel afin de créer votre connecteur personnalisé.
Grâce au plug-in de sortie Logstash pour Microsoft Sentinel, vous pouvez utiliser n’importe quel plug-in d’entrée et de filtrage Logstash et configurer Microsoft Sentinel comme sortie pour un pipeline Logstash. Logstash dispose d’une vaste bibliothèque de plug-ins qui permettent l’entrée de diverses sources, telles qu’Event Hubs, Apache Kafka, des fichiers, des bases de données et des services Cloud. Utilisez les plug-ins de filtrage pour analyser les événements, filtrer les événements inutiles, obfusquer les valeurs et bien plus encore.
Pour obtenir des exemples d’utilisation de Logstash en tant que connecteur personnalisé, consultez :
- Chasse aux TTP de violation Capital One dans les journaux AWS à l’aide de Microsoft Sentinel (blog)
- Guide d’implémentation Microsoft Sentinel Radware
Pour obtenir des exemples de plug-ins Logstash utiles, consultez :
- Plug-in d’entrée CloudWatch
- Plug-in Azure Event Hubs
- Plug-in d’entrée Google Cloud Storage
- Plug-in d’entrée Google_pubsub
Conseil
Logstash permet également la mise à l’échelle de la collecte des données à l’aide d’un cluster. Pour plus d’informations, consultez Utilisation d’une machine virtuelle Logstash avec équilibrage de charge à grande échelle.
Se connecter avec Logic Apps
Utilisez Azure Logic Apps pour créer un connecteur personnalisé serverless pour Microsoft Sentinel.
Notes
Si la création de connecteurs serverless à l’aide de Logic Apps peut être pratique, l’utilisation de Logic Apps pour vos connecteurs peut s’avérer coûteuse pour des volumes importants de données.
Nous vous recommandons d’utiliser cette méthode uniquement pour les sources de données de faible volume ou pour enrichir vos chargements de données.
Pour démarrer vos applications logiques, utilisez l’un des déclencheurs suivants :
Déclencheur Description Tâche récurrente Par exemple, programmez votre application logique pour récupérer régulièrement des données à partir de fichiers, de bases de données ou d’API externes spécifiques.
Pour plus d’informations, consultez Créer, planifier et exécuter des tâches et des workflows récurrents avec Azure Logic Apps.Déclenchement à la demande Exécutez votre application logique à la demande pour la collecte et le test manuels des données.
Pour plus d’informations, consultez Appeler, déclencher ou imbriquer des applications logiques à l’aide de points de terminaison HTTPS.Point de terminaison HTTP/S Recommandé pour la diffusion en continu et si le système source peut démarrer le transfert de données.
Pour plus d’informations, consultez Appeler des points de terminaison de service via HTTP ou HTTPS.Utilisez l’un des connecteurs Logic Apps qui lisent les informations pour obtenir vos événements. Par exemple :
- Se connecter à une API REST
- Se connecter à un serveur SQL Server
- Se connecter à un système de fichiers
Conseil
Des connecteurs personnalisés pour les API REST, les serveurs SQL et les systèmes de fichiers permettent également de récupérer des données à partir de sources de données locales. Pour plus d’informations, consultez la documentation Installer une passerelle de données locale.
Préparez les informations que vous souhaitez récupérer.
Par exemple, utilisez l’action Analyse JSON pour accéder aux propriétés du contenu JSON, ce qui vous permet de sélectionner ces propriétés dans la liste du contenu dynamique lorsque vous spécifiez des entrées pour votre application logique.
Pour plus d’informations, consultez Effectuer des opérations sur les données dans Azure Logic Apps.
Écrivez les données dans Log Analytics.
Pour plus d’informations, consultez la documentation Collecteur de données Azure Log Analytics.
Pour obtenir des exemples sur la façon dont vous pouvez créer un connecteur personnalisé pour Microsoft Sentinel à l’aide de Logic Apps, consultez :
- Créer un pipeline de données avec l’API Collecte de données
- Connecteur d’application logique Palo Alto Prisma utilisant un webhook (communauté GitHub Microsoft Sentinel)
- Sécuriser les appels Microsoft Teams grâce à l’activation planifiée (blog)
- Ingestion d’indicateurs de menace AlienVault OTX dans Microsoft Sentinel (blog)
Se connecter avec PowerShell
Le script PowerShell Upload-AzMonitorLog vous permet d’utiliser PowerShell pour diffuser en continu des événements ou des informations contextuelles sur Microsoft Sentinel depuis la ligne de commande. Cette diffusion en continu crée un connecteur personnalisé entre votre source de données et Microsoft Sentinel.
Par exemple, le script suivant charge un fichier CSV dans Microsoft Sentinel :
Import-Csv .\testcsv.csv
| .\Upload-AzMonitorLog.ps1
-WorkspaceId '69f7ec3e-cae3-458d-b4ea-6975385-6e426'
-WorkspaceKey $WSKey
-LogTypeName 'MyNewCSV'
-AddComputerName
-AdditionalDataTaggingName "MyAdditionalField"
-AdditionalDataTaggingValue "Foo"
Le script PowerShell Upload-AzMonitorLog utilise les paramètres suivants :
Paramètre | Description |
---|---|
WorkspaceId | ID de l’espace de travail Microsoft Sentinel où vous stockerez vos données. Trouver l’ID et la clé de votre espace de travail. |
WorkspaceKey | Clé primaire ou secondaire de l’espace de travail Microsoft Sentinel dans lequel vous stockerez vos données. Trouver l’ID et la clé de votre espace de travail. |
LogTypeName | Nom de la table de journal personnalisée dans laquelle vous souhaitez stocker les données. Un suffixe _CL est automatiquement ajouté à la fin du nom de votre table. |
AddComputerName | Lorsque ce paramètre existe, le script ajoute le nom de l’ordinateur actuel à chaque enregistrement de journal, dans un champ nommé Computer. |
TaggedAzureResourceId | Lorsque ce paramètre existe, le script associe tous les enregistrements de journal chargés à la ressource Azure spécifiée. Cette association permet de charger des enregistrements de journal pour les requêtes en contexte de ressources et adhère à un contrôle d’accès centré sur les ressources et basé sur les rôles. |
AdditionalDataTaggingName | Lorsque ce paramètre existe, le script ajoute un autre champ à chaque enregistrement de journal, avec le nom configuré et la valeur configurée pour le paramètre AdditionalDataTaggingValue. Dans ce cas, AdditionalDataTaggingValue ne doit pas être vide. |
AdditionalDataTaggingValue | Lorsque ce paramètre existe, le script ajoute un autre champ à chaque enregistrement de journal, avec la valeur configurée et le nom de champ configuré pour le paramètre AdditionalDataTaggingName. Si le paramètre AdditionalDataTaggingName est vide, mais qu’une valeur est configurée, le nom de champ par défaut est DataTagging. |
Trouver l’ID et la clé de votre espace de travail
Vous trouverez les détails des paramètres WorkspaceID et WorkspaceKey dans Microsoft Sentinel :
Dans Microsoft Sentinel, sélectionnez Paramètres sur la gauche, puis sélectionnez l’onglet Paramètres de l’espace de travail.
Sous Prise en main de Log Analytics>1 Connecter une source de données, sélectionnez Gestion des agents Windows et Linux.
Recherchez l’ID de votre espace de travail, la clé primaire et la clé secondaire dans les onglets Serveurs Windows.
Se connecter avec l’API Log Analytics
Vous pouvez diffuser en continu des événements sur Microsoft Sentinel en utilisant l’API de collecteur de données Log Analytics pour appeler directement un point de terminaison RESTful.
Bien que l’appel d’un point de terminaison RESTful nécessite directement davantage de programmation, il offre également plus de flexibilité.
Pour plus d’informations, consultez l’API de collecteur de données Log Analytics, en particulier les exemples suivants :
Se connecter avec Azure Functions
Utilisez Azure Functions avec une API RESTful et divers langages de codage, tels que PowerShell, pour créer un connecteur personnalisé serverless.
Pour voir des exemples de cette méthode, consultez :
- Connecter votre instance VMware Carbon Black Cloud Endpoint Standard à Microsoft Sentinel avec Azure Functions
- Connecter votre instance Okta Single Sign-On à Microsoft Sentinel avec Azure Functions
- Connecter votre solution Proofpoint TAP à Microsoft Sentinel avec Azure Functions
- Connecter votre solution Qualys VM à Microsoft Sentinel avec Azure Functions
- Ingestion de données aux formats XML, CSV ou autres
- Surveiller Zoom à l’aide de Microsoft Sentinel (blog)
- Déployer une application de fonction permettant de transférer les données de l’API de gestion d’Office 365 dans Microsoft Sentinel (communauté GitHub Microsoft Sentinel)
Analyser les données de votre connecteur personnalisé
Pour tirer parti des données collectées avec votre connecteur personnalisé, développez des analyseurs de l’Advanced SIEM Information Model (ASIM) pour utiliser votre connecteur. L’utilisation d’ASIM permet au contenu intégré de Microsoft Sentinel d’utiliser vos données personnalisées et facilite l’interrogation des données par les analystes.
Si votre méthode de connecteur le permet, vous pouvez implémenter une partie de l’analyse dans le cadre du connecteur pour améliorer les performances de l’analyse du temps de requête :
- Si vous avez utilisé Logstash, utilisez le plug-in de filtre Grok pour analyser vos données.
- Si vous avez utilisé une fonction Azure, analysez vos données à l’aide du code.
Vous devez toujours implémenter des analyseurs ASIM, mais l’implémentation d’une partie de l’analyse directement avec le connecteur simplifie l’analyse et améliore les performances.
Étapes suivantes
Utilisez les données ingérées dans Microsoft Sentinel pour sécuriser votre environnement à l’aide de l’un des processus suivants :
- Obtenir une visibilité des alertes
- Visualiser et superviser vos données
- Investiguer les incidents
- Détecter les menaces
- Automatiser la prévention des menaces
- Être à l’affût des menaces
Découvrez également un exemple de création de connecteurs personnalisé pour la surveillance Zoom : Surveiller Zoom à l’aide de Microsoft Sentinel.