Ce document explique comment configurer le plugin Microsoft Defender for Cloud Apps v2.1.1 avec le module Log Shipper de la plateforme Netskope Cloud Exchange. Ce plugin vous permet d'ingérer des événements Netskope (page, application) au format CEF depuis le locataire Netskope vers Microsoft Defender for Cloud Apps à l'aide de Cloud Exchange via le plugin Microsoft Defender for Cloud Apps. Le plugin ne prend pas en charge l'ingestion de données au format JSON.
Conditions préalables
Pour compléter cette configuration, vous avez besoin de :
- Un locataire Netskope (ou plusieurs, par exemple des instances de production et de développement/test).
- Un locataire Netskope Cloud Exchange avec le plugin Tenant et le plugin Log Shipper déjà configurés.
- Une instance de Microsoft Defender for Cloud Apps.
- Connectivité aux hôtes suivants : https://security.microsoft.com et /https://portal.azure.com/
Note
Vérifiez que les autorisations de votre instance Microsoft Defender sont sécurisées et qu'elles ne sont pas configurées pour un accès public. N'autorisez l'accès à votre instance de stockage en nuage qu'à partir de votre hôte Cloud Exchange et de toute autre adresse nécessitant un accès.
Prise en charge du plugin Microsoft Defender for Cloud Apps
Ce plugin est utilisé pour ingérer des événements de type Application et Page dans la page du journal de gouvernance de la plateforme Microsoft Defender. Ce plugin ne prend pas en charge l'ingestion des alertes Netskope et des transactions WebTx sur la plateforme Microsoft Defender. Le plugin ne prend en charge que l'ingestion de données au format CEF. L'envoi de données au format JSON n'est pas pris en charge.
| Type de données | Support |
|---|---|
| Événements |
|
| Alertes | Non pris en charge |
|
Journaux |
Non pris en charge |
|
WebTx |
Non pris en charge |
Permissions
Ces autorisations sont nécessaires pour que le plugin puisse configurer le plugin Microsoft Defender for Cloud App.
- Le rôle d'administrateur global de Cloud Discovery est requis pour accéder à Microsoft Defender for Cloud App Instance.
- Microsoft App Security for OAuth 2.0 (contexte applicatif)
- Discovery.manage
- Discovery.read
Détails de l'API
Liste des API utilisées
| Point final de l'API | Méthode | Cas d'utilisation |
|---|---|---|
| /oauth2/v2.0/token | PUBLIER | Generate Token |
| /api/v1/discovery/upload_url/ | OBTENIR | Initier le téléchargement d'un fichier - Cloud Discovery API |
| <initiate_file_upload_response_url> | PUT | Effectuer un téléchargement de fichier - Cloud Discovery API (obtenu à partir de "Initiate file upload") |
| /api/v1/discovery/done_upload/ | PUBLIER | Finaliser le téléchargement des fichiers - Cloud Discovery API |
Generate Token
API Endpoint: https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token
Method: POST
Headers
| Clé | Value |
|---|---|
| User-Agent | netskope-ce-5.0.1-cls-microsoft-defender-for-cloud-apps-v2.1.1 |
| Content-Type | application/x-www-form-urlencoded |
Payload
| Paramètres | Value |
|---|---|
| grant_type | client_credentials |
| client_id | client_id |
| client_secret | client_secret |
| scope | 05a65629-4c1b-48c1-a78b-804c4abdd4af/.default |
Sample API Response
{
"token_type": "Bearer",
"expires_in": 3599,
"ext_expires_in": 3599,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlQxU3QtZExUdnlXUmd4Ql82NzZ1OGtyWFMtSSIsImtpZCI6IlQxU3QtZExUdnlXUmd4Ql82NzZ1OGtyWFMtSSJ9.eyJhdWQiOiIwNWE2R1QVRFcTkxSzk5QUFBLiIsInJvbGVzIjpbImRpc2NvdmVyeS5tYW5hZ2UiXSwic3ViIjoiNzljMEHIywny8JmtEONTPUcOahramZDIYLL8JBGvUH5V-ebPIrAOnCZGvwcbYbVZy7joFwmjeIK22Er_4eCVDXDAzAWuF5uD-KFZp7DkZNSR06i7OD-Yo6YiGEzAP5fMW8anHREJDwh0OtkMn5GRf15ccuhBhNlGiT17uPNzAct*************************************5_DsDgVK109p1yVTrGTw"
}
Lancer le téléchargement de fichiers
API Endpoint: https://<tenant_id>.<tenant_region>.contoso.com/api/v1/discovery/upload_url/?filename=my_discovery_file.txt&source=GENERIC_CEF
Method: GET
Headers
| Clé | Value |
|---|---|
| User-Agent | netskope-ce-5.0.1-cls-microsoft-defender-for-cloud-apps-v2.1.1 |
| Authorization | Bearer <token> |
| Accept | application/json |
Payload
| Parameter | Value |
|---|---|
| source | GENERIC_CEF |
| filename | 140351985108800-ingestion_file.txt |
Sample API Response
{
"url": "https://prod5usw2console1.blob.core.windows.net/discovery-logs/2023-11/115979866_1701326176744_GENERIC_CEF_140351985108800-ingestion_file.txt?se=2023-12-01T06%3A36%3A16Z&sp=w&sv=2014-02-14&sr=b&sig=7EjuI4qdniikC5ehECtNzjjiaHFQ0FMix5Y1sPDDfhs=",
"provider": "azure"
}
Effectuer un téléchargement de fichier
API Endpoint: https://<initiate_file_upload_response_url>
Method: PUT
Headers
| Clé | Value |
|---|---|
| User-Agent | netskope-ce-5.0.1-cls-microsoft-defender-for-cloud-apps-v2.1.1 |
| x-ms-blob-type | BlockBlob |
| Accept | application/json |
Payload
N/A
Sample API Response
Status: 201 created
Finaliser le téléchargement d'un fichier
API Endpoint: https://<tenant_id>.<tenant_region>.contoso.com/api/v1/discovery/done_upload/
Method: GET
Request Body:
{
"uploadUrl":"",
"inputStreamName":""
}
Headers
| Clé | Value |
|---|---|
| User-Agent | netskope-ce-5.0.1-cls-microsoft-defender-for-cloud-apps-v2.1.1 |
| Authorization | Bearer <token> |
| Accept | application/json |
| Content-Type | application/json |
Payload
| Paramètres | Value |
|---|---|
| source | GENERIC_CEF |
| filename | 140351985108800-ingestion_file.txt |
Sample API Response
{
"success": true,
"inputStreamId": "6166e2d26e047397777e71e8",
"taskId": "656830c12339fba78191038a"
}
Matrice de performance
Cette analyse des performances a été réalisée sur une grande pile Cloud Exchange avec les spécifications de VM suivantes. Ces relevés sont ajoutés en tenant compte du fait qu'il ingère environ 10 000 événements en 3 secondes sur la plateforme Microsoft Defender for Cloud Apps.
| Description | Spécifications |
|---|---|
|
Taille de la pile |
Grandes dimensions CPU : 16 cœurs RAM : 32 GO |
|
Événements ingérés dans le SIEM Microsoft Defender for Cloud Apps |
200K EPM |
Agent utilisateur
netskope-ce-5.0.1-cls-microsoft-defender-for-cloud-apps-v2.1.1
Workflow
- Générer la méthode API Token Legacy.
- Générer l'identifiant du client, l'identifiant du locataire et le secret du client pour la méthode OAuth.
- Créez une source de données.
- Configurez le plugin Microsoft Defender for Cloud Apps.
- Ajouter une règle de gestion pour les expéditeurs de journaux.
- Ajoutez un Log Shipper SIEM mappings.
- Validez le plugin.
Regardez une vidéo
Cliquer sur « play » pour regarder une vidéo.
Générer le jeton API pour la méthode héritée (jeton API)
Suivez les étapes ci-dessous pour générer le jeton API. Vous pouvez également vous référer à cette documentation pour générer le jeton.
- Dans le portail Microsoft Defender, sélectionnez Settings.

- Cliquez sur Cloud Apps.

- Sous Système, cliquez sur API tokens.

- Cliquez sur Add token.

- Fournissez un nom pour identifier le jeton, puis cliquez sur Generate.

- Copiez la valeur du jeton et enregistrez-la pour configurer le plugin. Si vous le perdez, vous devez régénérer le jeton. Le jeton bénéficie des privilèges de l’utilisateur qui l’a émis. Par exemple, un lecteur de sécurité ne peut pas émettre un jeton qui peut modifier les données.
Vous pouvez filtrer les jetons par statut : Actif, Inactif ou Généré.
- Générés : Jetons qui n'ont jamais été utilisés.
- Actif : Jetons générés et utilisés au cours des sept derniers jours.
- Inactif : Les jetons qui ont été utilisés mais qui n'ont fait l'objet d'aucune activité au cours des sept derniers jours.
- Après avoir généré un jeton New, vous recevrez une URL New à utiliser pour accéder au portail Defender for Cloud Apps.
Générer l'identifiant du client, l'identifiant du locataire et le secret du client pour OAuth 2.0 (contexte de l'application)
Suivez les étapes ci-dessous pour générer l'ID client, l'ID locataire et le secret client pour configurer le plugin Microsoft Defender for Cloud Apps à l'aide d'OAuth 2.0 (contexte d'application).
- Connectez-vous à votre portail Microsoft Azure .
- Recherchez et sélectionnez App registrations.

- Cliquez sur New registration.

- Saisissez le nom de votre application et cliquez sur Register.

- Enregistrez l'ID du client et l'ID du locataire pour les utiliser dans la configuration de votre plugin.

- Cliquez sur Certificate and secrets pour générer l'identifiant secret.

- Cliquez sur New client secret, entrez la description et le temps d’expiration, puis cliquez sur Add.

- Copiez la valeur dans le champ Secret du client ; veillez à conserver la valeur du client en lieu sûr, car elle ne sera plus visible.

- Cliquez API permissions depuis le panneau de gauche.

- Cliquez sur Add permission pour fournir l'autorisation nécessaire à l'ingestion des données.

- Allez dans APIs my organization uses, cherchez Microsoft Cloud App Security, puis cliquez dessus.

- Select Application permissions.

- Select the discovery.manage and discovery.read permissions and then click Add permission.

- Veillez à fournir le consentement de l'administrateur.

Créer une source de données
- Dans Microsoft Defender, allez sur Settings > Cloud Apps.

- Sous Découverte du cloud, cliquez sur Automatic log upload.

- Cliquez sur Add data source.

- Saisissez le nom de la source de données, sélectionnez Generic CEF log pour Source, et Syslog – TCP pour le type Récepteur. Cliquez Add.


Configurer le plugin Microsoft Defender for Cloud Apps
- Dans Cloud Exchange, allez sur Settings > Plugins. Recherchez et sélectionnez la case du plugin Microsoft Defender for Cloud Apps v2.1.1 (CLS) .

- Saisissez un nom de configuration et assurez-vous que l'option Microsoft Defender for Cloud Apps Default Mapping (Mappage par défaut de Microsoft Defender for Cloud Apps) est sélectionnée. Désactivez le bouton bascule pour transformer les journaux afin d'ingérer les données au format JSON, ou laissez-le activé si vous souhaitez ingérer les données au format CEF.

- Cliquez sur Next, puis entrez les paramètres de confirmation :
For Legacy Method (API Token)- URL du portail : URL de votre plateforme Microsoft Defender for Cloud Apps (sans https://).
- Méthode d'authentification : Méthode héritée (jeton API).
- Jeton API : Jeton API pour l'authentification dans le portail Microsoft Defender for Cloud Apps. Le jeton API peut être généré à partir de la page Settings > Cloud Apps > API Tokens. Le jeton API n'est requis que si la méthode "Legacy Method (API Token)" est sélectionnée.
- Source des données : La source de données dans laquelle les journaux de trafic de Log Shipper doivent être téléchargés. La source de données se trouve dans Paramètres > Applications cloud > Découverte du cloud > Téléchargement automatique des journaux.

For OAuth 2.0 Method (Application context)
- URL du portail : URL de votre plateforme Microsoft Defender for Cloud Apps (sans https://).
- Méthode d'authentification : OAuth 2.0 (contexte de l'application).
- Client ID : ID client de votre application Azure. L'identifiant du client peut être trouvé dans les enregistrements d'applications > Nom de l'application > Page d'aperçu. Ceci n'est nécessaire que si la méthode OAuth 2.0 (contexte de l'application) est sélectionnée.
- Tenant ID : ID du locataire de votre application Azure. L'identifiant du locataire peut être trouvé dans les enregistrements d'applications > Nom de l'application > Page d'aperçu. Elle n'est requise que si la méthode "OAuth 2.0 (Application context)" est sélectionnée.
- Secret du client : Secret du client de votre application Azure. Le secret client peut être généré à partir des enregistrements d'applications > App Name > Certificates & secrets page. Ceci n'est nécessaire que si la méthode OAuth 2.0 (contexte de l'application) est sélectionnée.
- données Source : La source de données où les journaux de trafic de CLS doivent être téléchargés. La source de données se trouve à l'adresse suivante : Settings > Cloud Apps > Cloud Discovery > Automatic Log Upload.

- Cliquez Save. La configuration des plugins sera disponible sur la page Cloud Log Shipper > Plugins .

Configurer une règle de gestion de l'expéditeur de journaux pour Microsoft Defender
- Allez sur Log Shipper > Business Rules.
- Par défaut, une règle de gestion filtre toutes les alertes et tous les événements. Si vous souhaitez filtrer un type spécifique d'alerte ou d'événement, cliquez sur Create New Rule et configurez une règle de gestion New en ajoutant le nom de la règle et le(s) filtre(s).

- Lorsque vous avez terminé, cliquez sur Save.

Configurer un mappage SIEM Log Shipper pour Microsoft Defender
- Allez à Log Shipper > SIEM Mappings et cliquez sur Add SIEM Mapping.
- Select le plugin Source (Netskope CLS), le plugin Destination (Microsoft Defender for Cloud Apps), et une règle métier, puis cliquez sur Save.
- Une fois le mappage SIEM ajouté, les données commenceront à être extraites du locataire Netskope, transformées et ingérées dans la plateforme Microsoft Defender for Cloud Apps.

Valider le plugin
Valider le retrait
Pour valider l'extraction des indicateurs du locataire Netskope.
- Allez sur Logging dans Cloud Exchange et recherchez les journaux tirés.

Valider le push
Pour valider le plugin workflow dans Cloud Exchange:
- Allez sur Logging et recherchez les événements ingérés avec le filtre message contains ingested, et les journaux ingérés seront filtrés.

Pour valider le push sur la plateforme Microsoft Defender :
- Allez sur Microsoft Defender for Cloud Apps Platform.
- On the left panel, under Cloud apps, click Governance log.
- Vérifiez les fichiers pour vous assurer que les données ingérées sont répertoriées.

- Va sur Settings > Cloud apps > Automatic log upload. Vérifiez le nombre d'éléments de la source de données que vous avez fournie lors de la configuration du plugin.

- Pour voir les utilisateurs extraits des journaux, rendez-vous sur Home > Cloud Discovery.

Dépannage du plugin Microsoft Defender for Cloud Apps
Réception de l'erreur "certificate verification failed" lors de l'ingestion des indicateurs
- Si vous rencontrez une erreur avec le code d'erreur "CLS_1005" lors de l'ingestion des événements après avoir configuré le mappage SIEM de Netskope à Microsoft Defender for Cloud Apps.
- Cela peut être dû au fait que l'URL du portail Microsoft Defender for Cloud Apps est bloquée sur votre machine.
What to do: Pour résoudre ce problème, contactez votre équipe d'assistance informatique pour qu'elle vous aide à débloquer votre URL.


Problèmes dans la configuration existante du plugin après la mise à jour du plugin
Si vous avez déjà configuré un plugin Microsoft Defender for Cloud Apps, vous pouvez rencontrer le problème suivant après avoir mis à jour votre plugin Microsoft Defender for Cloud Apps : Le CE devient vide lors de l'édition de la configuration du plugin existant.
Il est possible de rencontrer ce problème dans CE 4.2.0 et CE 5.0.0 si la configuration existante du plugin est modifiée après que l'utilisateur soit allé sur la page des paramètres de configuration après la mise à jour du plugin.
What to do: Vérifiez la version de votre CE et suivez les solutions de contournement mentionnées ci-dessous.
For 4.2.0: La seule solution pour la version 4.2.0 est de supprimer la configuration existante du plugin et d'en créer une nouvelle à l'adresse New.
For 5.0.0: Si le plugin n'a pas encore été mis à jour, assurez-vous de suivre les étapes ci-dessous et de sauvegarder la configuration du plugin lors de la mise à jour, sans la sauter.

- Si vous utilisez le site Legacy Method (API Token) et que vous souhaitez continuer à utiliser la méthode traditionnelle, assurez-vous que le menu déroulant de votre méthode d'authentification sélectionne la méthode traditionnelle (jeton API) avant d'enregistrer la configuration dans la mise à jour du plugin sur la page du référentiel du plugin.
- Si vous souhaitez utiliser la méthode OAuth 2.0 (Application context) , veillez à la sélectionner dans la liste déroulante Méthodes d'authentification et à fournir tous les paramètres de configuration. Ne passez pas.
Quoi qu'il en soit, l'une des solutions pour toutes les méthodes pendant la mise à jour du plugin sur la page Plugin Repository est de sauvegarder la mise à jour du plugin et de ne pas l'ignorer.
Si vous avez déjà mis à jour le plugin et que vous avez sélectionné ignorer lors de la mise à jour du plugin, supprimez la configuration du plugin existant et configurez un plugin New Microsoft Defender for Cloud Apps.
Réception de l'erreur File Upload lors de l'ingestion des événements dans la plateforme Microsoft Defender for Cloud Apps
Si le plugin est configuré correctement et que vous recevez l'erreur ci-dessous, cela signifie que la source de données fournie dans la configuration du plugin n'est pas disponible sur la plateforme Microsoft Defender for Cloud Apps.

What to do: Accédez à votre plateforme Microsoft Defender for Cloud Apps.
- Va dans le téléchargement automatique du journal depuis Settings > Cloud Apps > Cloud Discovery.
- Recherchez le nom de la source de données utilisé dans la configuration du plugin. Si le nom de la source de données n'est pas trouvé, créez une source de données New.
- Si le nom de la source des données est disponible, assurez-vous que le nom exact de la source des données est utilisé.
Difficulté à suivre les données ingérées
Si l'ingestion de données est difficile à suivre en raison des nombreux fichiers créés sur la plateforme Microsoft Defender, vous pouvez simplement rechercher le nom du fichier.
What to do:
Allez sur Logging dans Cloud Exchange et vérifiez les journaux des requêtes API du plugin Microsoft Defender for Cloud Apps. Les journaux ont le nom de fichier qui serait créé sur la plateforme Microsoft Defender for Cloud Apps pour les données ingérées. Copiez le nom du fichier et recherchez le fichier sur la plateforme Microsoft Defender for Cloud Apps dans le journal de gouvernance sous Cloud apps.
Limites
- Microsoft Defender for Cloud Apps impose une limite : il ne peut transmettre que des fichiers d'une taille maximale de 64 Mo. Si cette limite est dépassée, une erreur indiquant que le fichier est supérieur à 64 Mo sera rencontrée dans le plugin lors de l'ingestion des données.
- Il existe une limitation concernant la conservation des données sur Microsoft Defender for Cloud Apps : si les données ingérées ont plus de 90 jours, un statut d’échec apparaîtra sur la page du journal de gouvernance où les événements sont ingérés.

