Использование Log Analytics для проверки журналов брандмауэра веб-приложения Шлюза приложений (WAF)
После того как Брандмауэр веб-приложений Шлюза приложений начнет работу, можно включить журналы, чтобы проверить, что происходит с каждым запросом. Журналы брандмауэра дают представление об оценке, сопоставлении и блокировке различных событий системой WAF. С помощью Log Analytics можно проверить данные в журналах брандмауэра, чтобы получить дополнительные аналитические сведения. Дополнительные сведения о запросах журналов см. в разделе Общие сведения о запросах журналов в Azure Monitor.
Необходимые компоненты
- Учетная запись Azure с активной подпиской. Если у вас еще нет учетной записи, вы можете создать учетную запись бесплатно.
- Azure Брандмауэр веб-приложений с включенными журналами. Дополнительные сведения см. в Шлюз приложений Azure Брандмауэр веб-приложений Azure.
- Рабочая область Log Analytics. Дополнительные сведения о создании рабочей области Log Analytics см. в статье Создание рабочей области Log Analytics на портале Azure.
Импорт журналов WAF
Чтобы импортировать журналы брандмауэра в Log Analytics, см. сведения о работоспособности серверной части, журналах диагностики и метриках для Шлюз приложений. При наличии журналов брандмауэра в рабочей области Log Analytics можно просматривать данные, записывать запросы, создавать визуализации и добавлять их на панель мониторинга в портале.
Просмотр данных с помощью примеров
Для просмотра необработанных данных в журнале брандмауэра можно выполнить следующий запрос:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
Это выглядит примерно так, как показано в следующем запросе:
Здесь вы можете детализировать данные, строить графики и создавать визуализации. Для начала рекомендуем посмотреть следующие запросы:
Совпадающие или заблокированные запросы по IP-адресу
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize count() by clientIp_s, bin(TimeGenerated, 1m)
| render timechart
Совпадающие или заблокированные запросы по URI
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize count() by requestUri_s, bin(TimeGenerated, 1m)
| render timechart
Лучшие правила соответствия
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize count() by ruleId_s, bin(TimeGenerated, 1m)
| where count_ > 10
| render timechart
Пять основных сопоставленных групп правил
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.NETWORK" and Category == "ApplicationGatewayFirewallLog"
| summarize Count=count() by details_file_s, action_s
| top 5 by Count desc
| render piechart
Добавление в панель мониторинга
После создания запроса его можно добавить на панель мониторинга. Выберите Закрепить на панели мониторинга в правом верхнем углу рабочей области Log Analytics. С помощью предыдущих четырех запросов, закрепленных на панели мониторинга в качестве примера, можно быстро увидеть данные:
Следующие шаги
Работоспособность серверной части, журналы диагностики и метрики для шлюза приложений