Collecter les journaux de gestion d'API Azure

Version de l'analyseur : 1.0

Compatible avec :

Ce document explique comment créer un flux Azure Event Hub pour ingérer les journaux Azure API Management dans Google Security Operations.

Azure API Management est une plate-forme de gestion hybride et multicloud pour les API dans tous les environnements. Il aide les organisations à publier des API pour les développeurs externes, partenaires et internes afin de libérer le potentiel de leurs données et services. La gestion d'API fournit des outils pour la découverte d'API, les fonctionnalités de passerelle, les règles de sécurité, l'analyse et l'engagement des développeurs. Les journaux de diagnostic capturent des informations détaillées sur les opérations de l'API Gateway, y compris les requêtes, les réponses et les erreurs.

Avant de commencer

Assurez-vous de remplir les conditions préalables suivantes :

  • Une instance Google SecOps
  • Accès privilégié au portail Microsoft Azure avec les autorisations suivantes :
    • Créer des espaces de noms Event Hubs
    • Créer des Event Hubs
    • Configurer les paramètres de diagnostic pour la gestion des API Azure
    • Gérer les règles d'accès
  • Une instance de service Azure API Management existante

Créer un espace de noms Event Hubs

Un espace de noms Event Hubs est un conteneur de gestion pour un ou plusieurs Event Hubs.

  1. Dans le portail Azure, recherchez Event Hubs.
  2. Cliquez sur + Créer.
  3. Fournissez les informations de configuration suivantes :

    Paramètre Valeur
    Abonnement Sélectionnez votre abonnement Azure
    Groupe de ressources Sélectionner une base de données existante ou en créer une
    Nom de l'espace de noms Saisissez un nom unique (par exemple, secops-apim-eventhub).
    Emplacement Sélectionnez la région (par exemple, East US).
    Niveau de tarification Standard (recommandé pour la production)
    Unités de débit Commencez par 1, puis activez le gonflement automatique (recommandé)
  4. Cliquez sur Examiner et créer.

  5. Examinez la présentation, puis cliquez sur Créer.

  6. Attendez la fin du déploiement (une à deux minutes).

Créer un hub d'événements

  1. Une fois l'espace de noms déployé, accédez à l'espace de noms Event Hubs.
  2. Dans le volet de navigation de gauche, sélectionnez Event Hubs sous Entities (Entités).
  3. Cliquez sur + Event Hub.
  4. Fournissez les informations de configuration suivantes :

    Paramètre Valeur
    Nom Saisissez un nom unique (par exemple, apim-logs).
    Nombre de partitions 40 (recommandé pour un scaling optimal de Google SecOps)
    Conservation des messages 7 jours (minimum recommandé)
    Capture Désactivé (non nécessaire pour Google SecOps)
  5. Cliquez sur Créer.

Obtenir la chaîne de connexion Event Hubs

Google SecOps nécessite une chaîne de connexion pour s'authentifier auprès d'Event Hub.

  1. Accédez à l'espace de noms Event Hub.
  2. Dans le menu de navigation de gauche, sélectionnez Stratégies d'accès partagé sous Paramètres.
  3. Cliquez sur la règle par défaut RootManageSharedAccessKey.
  4. Copiez la chaîne de connexion – clé primaire.
  5. Enregistrez cette chaîne de connexion de manière sécurisée.
  • Exemple :

    Original: Endpoint=sb://secops-apim-eventhub.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123==;EntityPath=apim-logs
    
    Remove EntityPath: Endpoint=sb://secops-apim-eventhub.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123==
    

Option B : Chaîne de connexion au niveau d'Event Hubs

  1. Accédez au hub d'événements (et non à l'espace de noms).
  2. Dans le menu de navigation de gauche, sélectionnez Stratégies d'accès partagé sous Paramètres.
  3. Cliquez sur + Ajouter pour créer une règle.
  4. Fournissez les informations de configuration suivantes :
    • Nom de la règle : saisissez un nom descriptif (par exemple, chronicle-read).
    • Autorisations : sélectionnez Écouter uniquement (accès en lecture seule).
  5. Cliquez sur Créer.
  6. Cliquez sur la règle que vous venez de créer.
  7. Copiez la chaîne de connexion – clé primaire.
  8. Enregistrez cette chaîne de connexion de manière sécurisée.

Configurer la gestion d'API Azure pour diffuser vers Event Hubs

  1. Dans le portail Azure, recherchez API Management services (Services de gestion d'API).
  2. Sélectionnez votre instance de service de gestion d'API.
  3. Dans le menu de navigation de gauche, sélectionnez Paramètres de diagnostic sous Surveillance.
  4. Cliquez sur + Add diagnostic setting (+ Ajouter un paramètre de diagnostic).
  5. Fournissez les informations de configuration suivantes :
    • Nom du paramètre de diagnostic : saisissez un nom descriptif (par exemple, apim-to-secops).
    • Dans la section Journaux, sélectionnez les catégories suivantes :
      • GatewayLogs : journaux des requêtes et des réponses de l'API Gateway
      • WebSocketConnectionLogs : journaux de connexion WebSocket (le cas échéant)
      • DeveloperPortalAuditLogs : journaux d'audit du portail des développeurs (le cas échéant)
      • GatewayLlmLogs : journaux de la passerelle d'IA générative (le cas échéant)
      • GatewayMCPLogs : journaux de serveur MCP (Model Context Protocol) (le cas échéant)
    • Dans la section Détails de la destination, cochez la case Diffuser vers un hub d'événements.
    • Abonnement : sélectionnez l'abonnement contenant votre espace de noms Event Hubs.
    • Espace de noms Event Hubs : sélectionnez l'espace de noms que vous avez créé précédemment (par exemple, secops-apim-eventhub).
    • Nom du hub d'événements : sélectionnez le hub d'événements que vous avez créé (par exemple, apim-logs).
    • Nom de la règle du hub d'événements : sélectionnez RootManageSharedAccessKey ou une règle personnalisée avec des autorisations d'envoi.
  6. Cliquez sur Enregistrer.

(Facultatif) Configurer Azure Blob Storage pour les points de contrôle

Google SecOps peut utiliser Azure Blob Storage pour stocker les points de contrôle Event Hubs, qui permettent de suivre les événements traités. Cela permet d'éviter l'ingestion de doublons si le flux est temporairement interrompu.

Créer un compte de stockage pour les points de contrôle

  1. Sur le portail Azure, recherchez Comptes de stockage.
  2. Cliquez sur + Créer.
  3. Fournissez les informations de configuration suivantes :

    Paramètre Valeur
    Abonnement Sélectionnez votre abonnement Azure
    Groupe de ressources Utilisez le même groupe de ressources qu'Event Hub.
    Nom du compte de stockage Saisissez un nom unique (par exemple, secopsapimcheckpoint).
    Région Même région que le hub d'événements
    Performances Standard
    Redondance LRS (stockage localement redondant)
  4. Cliquez sur Examiner et créer.

  5. Cliquez sur Créer.

Créer un conteneur de blobs

  1. Accédez au compte de stockage que vous venez de créer.
  2. Dans le menu de navigation de gauche, sélectionnez Conteneurs sous Stockage de données.
  3. Cliquez sur + Conteneur.
  4. Fournissez les informations de configuration suivantes :
    • Nom : saisissez checkpoints.
    • Niveau d'accès public : Privé (pas d'accès anonyme)
  5. Cliquez sur Créer.

Obtenir les identifiants du compte de stockage

  1. Dans le compte de stockage, sélectionnez Clés d'accès sous Sécurité et mise en réseau.
  2. Cliquez sur Afficher les clés.
  3. Copiez et enregistrez :
    • Nom du compte de stockage : nom de votre compte de stockage
    • Clé 1 : valeur de la clé d'accès

Vous fournirez ces valeurs lors de la création du flux Google SecOps.

(Facultatif) Créer un groupe de consommateurs dédié

Par défaut, Event Hub fournit un groupe de consommateurs nommé $Default. Pour les environnements de production, il est recommandé de créer un groupe de consommateurs dédié pour Google SecOps.

  1. Accédez au hub d'événements (et non à l'espace de noms).
  2. Dans le menu de navigation de gauche, sélectionnez Groupes de consommateurs sous Entités.
  3. Cliquez sur + Groupe de consommateurs.
  4. Fournissez les informations de configuration suivantes :
    • Nom : saisissez un nom descriptif (par exemple, chronicle).
  5. Cliquez sur Créer.

Configurer un flux dans Google SecOps pour ingérer les journaux Azure de gestion d'API

  1. Accédez à Paramètres > Gestion des données > Flux. Si vous utilisez une plate-forme SIEM uniquement, accédez à Paramètres > Flux.
  2. Cliquez sur Ajouter un flux d'actualités.
  3. Sur la page suivante, cliquez sur Configurer un seul flux.
  4. Dans le champ Nom du flux, saisissez un nom pour le flux (par exemple, Azure API Management Logs).
  5. Sélectionnez Microsoft Azure Event Hub comme type de source.
  6. Sélectionnez Azure API Management comme Type de journal.
  7. Cliquez sur Suivant.
  8. Spécifiez les valeurs des paramètres d'entrée suivants :

    • Chaîne de connexion du hub d'événements : saisissez la chaîne de connexion du hub d'événements que vous avez capturée précédemment.

    • Si vous utilisez une chaîne de connexion au niveau de l'espace de noms :

      • Assurez-vous d'avoir supprimé le paramètre EntityPath.
      • Vous devez également indiquer le nom du hub d'événements dans le champ suivant.
    • Si vous utilisez une chaîne de connexion au niveau du hub d'événements :

      • Utiliser la chaîne de connexion telle quelle (inclut EntityPath)
      • Le champ Nom du hub d'événements peut être laissé vide.
    • Nom du hub d'événements : saisissez le nom du hub d'événements (par exemple, apim-logs).

      • Obligatoire si vous utilisez une chaîne de connexion au niveau de l'espace de noms.
      • Facultatif si vous utilisez une chaîne de connexion au niveau du hub d'événements.
    • Groupe de consommateurs (facultatif) : saisissez le nom du groupe de consommateurs.

      • Laissez ce champ vide pour utiliser le groupe de consommateurs $Default par défaut.
      • Si vous avez créé un groupe de consommateurs dédié, saisissez son nom (par exemple, chronicle).
    • Nom du conteneur de stockage d'objets blob (facultatif) : pour les points de contrôle, saisissez le nom du conteneur (par exemple, checkpoints).

    Si vous fournissez un stockage de blobs pour les points de contrôle :

    • Nom du compte de stockage Azure : saisissez le nom du compte de stockage à partir de la configuration de point de contrôle.
    • Clé du compte de stockage Azure : saisissez la clé d'accès de la configuration de point de contrôle.

    • Espace de noms de l'élément : espace de noms de l'élément

    • Étiquettes d'ingestion : étiquette à appliquer aux événements de ce flux.

  9. Cliquez sur Suivant.

  10. Vérifiez la configuration de votre nouveau flux d'actualités sur l'écran Finaliser, puis cliquez sur Envoyer.

Pour en savoir plus sur les flux Google SecOps, consultez la documentation sur les flux Google SecOps.

Table de mappage UDM

Champ du journal Mappage UDM Logique
Level_label additional.fields Fusionné
Sku_label additional.fields Fusionné
apiId_label additional.fields Fusionné
apiRevision_label additional.fields Fusionné
apimSubscriptionId_label additional.fields Fusionné
backendMethod_label additional.fields Fusionné
backendProtocol_label additional.fields Fusionné
backendResponseCode_label additional.fields Fusionné
backendTime_label additional.fields Fusionné
cache_label additional.fields Fusionné
clientProtocol_label additional.fields Fusionné
durationMs_label additional.fields Fusionné
eventName_label additional.fields Fusionné
eventid_label additional.fields Fusionné
functionInvocationId_label additional.fields Fusionné
functionName_label additional.fields Fusionné
hostInstanceId_label additional.fields Fusionné
hostVersion_label additional.fields Fusionné
isRequestSuccess_label additional.fields Fusionné
operationId_label additional.fields Fusionné
productId_label additional.fields Fusionné
properties.message metadata.description Mappage direct
time metadata.event_timestamp Analysé en tant que ISO8601
has_principal metadata.event_type Mappé : true → STATUS_UPDATE
operationName metadata.product_event_type Mappage direct
DeploymentVersion metadata.product_version Mappage direct
properties.method network.http.method Mappage direct
properties.responseCode network.http.response_code Mappage direct
properties.responseSize network.received_bytes Mappage direct
properties.requestSize network.sent_bytes Mappage direct
correlationId network.session_id Mappage direct
properties.clientTlsCipherSuite network.tls.cipher Mappage direct
properties.clientTlsVersion network.tls.version Mappage direct
callerIpAddress principal.asset.ip Fusionné
callerIpAddress principal.ip Fusionné
location principal.location.name Mappage direct
properties.url principal.url Mappage direct
properties.userId principal.user.userid Mappage direct
action security_result.action Fusionné
resultType security_result.action Mappé : Succeeded → action
category security_result.category_details Fusionné
properties.category security_result.category_details Fusionné
level security_result.severity Mappage direct
resultType security_result.summary Mappage direct
properties.appName target.application Mappage direct
properties.processId target.process.pid Mappage direct
roleInstance_label target.resource.attribute.labels Fusionné
resourceId target.resource.product_object_id Mappage direct
properties.backendUrl target.url Mappage direct
N/A metadata.event_type Constante : GENERIC_EVENT
N/A metadata.product_name Constante : AZURE API MANAGEMENT
N/A metadata.vendor_name Constante : AZURE_API_MANAGEMENT
N/A network.tls.version_protocol Constante : HTTP

Journal des modifications

Afficher le journal des modifications de cet analyseur

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.