Utiliser Azure Log Analytics pour examiner les journaux du pare-feu d’applications web (WAF) sur Application Gateway
Une fois que votre WAF Application Gateway est opérationnel, vous pouvez activer les journaux pour examiner ce qui se produit avec chaque requête. Les journaux de pare-feu donnent des informations sur ce que le WAF évalue, met en correspondance et bloque. Avec Azure Monitor Log Analytics, vous pouvez examiner les données contenues dans les journaux de pare-feu pour obtenir encore plus d’informations. Pour plus d’informations sur la création d’un espace de travail Log Analytics, consultez Créer un espace de travail Log Analytics dans le portail Azure. Pour plus d’informations sur les requêtes de journal, consultez Vue d’ensemble des requêtes de journal dans Azure Monitor.
Importer les journaux du WAF
Pour importer les journaux du pare-feu dans Log Analytics, consultez Intégrité du serveur principal, journaux de ressources et métriques pour la passerelle Application Gateway. Une fois les journaux du pare-feu dans votre espace de travail Log Analytics, vous pouvez afficher les données, écrire des requêtes, créer des visualisations, et ajouter ces dernières au tableau de bord de votre portail.
Explorer les données avec des exemples
Pour afficher les données brutes dans le journal du pare-feu, vous pouvez exécuter la requête suivante :
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
Cela ressemblera à la requête suivante :
Vous pouvez explorer les données et tracer des graphiques ou créer des visualisations à partir d’ici. Consultez les requêtes suivantes comme point de départ :
Requêtes mises en correspondance/bloquées par adresse IP
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize count() by clientIp_s, bin(TimeGenerated, 1m)
| render timechart
Requêtes mises en correspondance/bloquées par URI
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize count() by requestUri_s, bin(TimeGenerated, 1m)
| render timechart
Principales règles mises en correspondance
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize count() by ruleId_s, bin(TimeGenerated, 1m)
| where count_ > 10
| render timechart
Cinq principaux groupes de règles mis en correspondance
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize Count=count() by details_file_s, action_s
| top 5 by Count desc
| render piechart
Ajouter à votre tableau de bord
Une fois que vous créez une requête, vous pouvez l’ajouter à votre tableau de bord. Sélectionnez Épingler au tableau de bord dans le coin supérieur droit de l’espace de travail Log Analytics. Avec les quatre requêtes précédentes épinglées à un exemple de tableau de bord, voici les données que vous pouvez voir en un coup d’œil :