Cette page s'applique à Apigee et à Apigee hybrid.
De nombreuses organisations cherchent à intégrer Apigee à leurs solutions de gestion des informations et des événements de sécurité (SIEM, Security Information and Event Management). Cette intégration permet de donner de la valeur à la mise en corrélation des données Apigee avec d'autres journaux de produits réseau et de sécurité, ce qui facilite la détection avancée des menaces, la journalisation complète et la création de rapports de conformité. Ce document explore différentes approches d'intégration, en tenant compte des scénarios avec et sans le module complémentaire Advanced API Security.
Audience
L'audience de ce document inclut :
- Les administrateurs d'API sont chargés d'assurer la sécurité des API, de gérer les configurations de la plate-forme, de favoriser l'efficacité opérationnelle et de respecter les exigences de conformité en matière de sécurité.
- Les analystes de sécurité se concentrent sur la détection et l'investigation proactives des incidents de sécurité liés aux API afin de minimiser les risques et de protéger les données sensibles.
Options de configuration
Apigee propose deux méthodes principales pour envoyer des informations de journal à une solution SIEM :
Option | Description |
---|---|
Journaux Google Cloud Platform | Fournit un niveau de base de données de journaux d'API, y compris des journaux spécifiques aux services utiles pour le débogage et le dépannage. |
Règle de journalisation des messages Apigee | La règle de journalisation des messages offre plus de flexibilité et de contrôle, ce qui vous permet d'envoyer un large éventail de données de journalisation Apigee, y compris des variables de flux spécifiques, à votre solution SIEM. |
Intégrer Apigee à votre SIEM
L'adaptabilité d'Apigee garantit une intégration fluide à la solution SIEM de votre choix. Les étapes d'intégration générale sont les suivantes :
- Choisissez votre méthode d'intégration. Sélectionnez les journaux de la plate-forme Google Cloud ou la règle de journalisation des messages Apigee en fonction de vos besoins en données et des capacités de votre SIEM.
- Établissez le transfert de données. Pour établir le transfert de données, configurez Apigee de manière à envoyer les données de journaux souhaitées à votre SIEM. Voici les étapes de base pour cette configuration.
La procédure exacte dépend de la configuration de votre système SIEM :
- Configurez une connexion ou une intégration entre Apigee et votre solution SIEM.
- Dans la configuration de votre solution SIEM, spécifiez les journaux ou événements Apigee à transférer vers votre solution SIEM.
- Accordez les autorisations nécessaires dans votre solution SIEM pour recevoir et traiter les données Apigee.
- Alignez les structures de données. Mappez les champs de journaux Apigee et les variables de flux (comme
client.ip
,request.uri
, etc.). aux champs correspondants du modèle de données de votre solution SIEM. Cet alignement garantit que la solution SIEM peut interpréter et catégoriser correctement les données Apigee pour une analyse et une corrélation efficaces avec d'autres événements de sécurité.
Consigner les données Advanced API Security
Si vous souhaitez consigner les données identifiées par la détection des abus Advanced API Security, vous pouvez utiliser les Actions avec la stratégie de journalisation des messages Apigee.
Procédez comme suit :
- Utilisez les actions Advanced API Security pour signaler une règle que vous souhaitez consigner.
- Utilisez l'en-tête ajouté par l'action pour déclencher la règle de journalisation des messages et enregistrer la requête signalée.
Par exemple, l'image suivante montre l'en-tête
apisec
configuré avec la valeurabuse
dans l'interface utilisateur des actions :Dans cet exemple, vous pouvez configurer la règle de journalisation des messages pour qu'elle se déclenche lorsqu'elle voit l'en-tête :
<PostFlow name="PostFlow"> <Request> <Step> <Condition>request.header.apisec="abuse"</Condition> <Name>LogMessagePolicy</Name> </Step> </Request> </PostFlow>
Exemple : Utiliser la règle de journalisation des messages Apigee
Cet exemple montre comment configurer la règle de journalisation des messages Apigee pour envoyer les données de journaux Apigee à un SIEM. Avec cette option, vous spécifiez dans la stratégie de journalisation des messages les variables de flux Apigee que vous souhaitez envoyer à la solution SIEM. Cette option vous permet d'envoyer un ensemble plus riche de détails de journal à la solution SIEM que celui que vous obtenez avec l'option de journal de la plate-forme Cloud.
- Activez l'ingestion des données Apigee dans la solution SIEM.
- Créez une règle MessageLogging avec le corps XML suivant. Pour obtenir de l'aide, consultez Associer et configurer des règles dans l'UI.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageLogging continueOnError="false" enabled="true" name="ML-SIEM-Integration"> <CloudLogging> <LogName>projects/{organization.name}/logs/Apigee-SIEM-Integration-{environment.name}</LogName> <Message contentType="application/json" defaultVariableValue="unknown"> { "apigee.metrics.policy.{policy_name}.timeTaken": "{apigee.metrics.policy.{policy_name}.timeTaken}", "client.country": "{client.country}", "client.host": "{client.host}", "client.ip": "{client.ip}", "client.locality": "{client.locality}", "client.port": "{client.port}", "client.state": "{client.state}", "organization.name": "{organization.name}", "proxy.client.ip": "{proxy.client.ip}", "proxy.name": "{proxy.name}", "proxy.pathsuffix": "{proxy.pathsuffix}", "proxy.url": "{proxy.url}", "request.uri": "{request.uri}", "request.verb": "{request.verb}", "response.content": "{response.content}", "response.reason.phrase": "{response.reason.phrase}", "response.status.code": "{response.status.code}", "system.region.name": "{system.region.name}", "system.timestamp": "{system.timestamp}", "system.uuid": "{system.uuid}", "target.country": "{target.country}", "target.host": "{target.host}", "target.ip": "{target.ip}", "target.locality": "{target.locality}", "target.organization": "{target.organization}", "target.port": "{target.port}", "target.scheme": "{target.scheme}", "target.state": "{target.state}", "target.url": "{target.url}" } </Message> </CloudLogging> </MessageLogging>
- Associez la règle au post-flux du point de terminaison du proxy. Consultez la section Associer et configurer des règles dans l'UI
À mesure que le proxy d'API traite le trafic, la règle de journalisation capture les champs spécifiés des requêtes et des réponses, et les écrit dans le fichier journal pour analyse et débogage.