Konfigurowanie niestandardowej odpowiedzi dla usługi Azure Web Application Firewall
W tym artykule opisano sposób konfigurowania niestandardowej strony odpowiedzi, gdy usługa Azure Web Application Firewall blokuje żądanie.
Domyślnie, gdy usługa Azure Web Application Firewall blokuje żądanie ze względu na dopasowaną regułę, zwraca kod stanu 403 z komunikatem "Żądanie jest zablokowane". Komunikat domyślny zawiera również ciąg odwołania do śledzenia używany do łączenia się z wpisami dziennika dla żądania. Możesz skonfigurować niestandardowy kod stanu odpowiedzi i niestandardowy komunikat z ciągiem referencyjnym dla danego przypadku użycia.
Konfigurowanie niestandardowego kodu stanu odpowiedzi i komunikatu przy użyciu portalu
Niestandardowy kod stanu odpowiedzi i treść można skonfigurować w obszarze Ustawienia zasad w portalu usługi Azure Web Application Firewall.
W poprzednim przykładzie zachowaliśmy kod odpowiedzi jako 403 i skonfigurowaliśmy krótki komunikat "Skontaktuj się z nami", jak pokazano na poniższej ilustracji:
Element "{{azure-ref}}" wstawia unikatowy ciąg odwołania w treści odpowiedzi. Wartość jest zgodna z polem TrackingReference w dziennikach FrontDoorAccessLog
i FrontDoorWebApplicationFirewallLog
.
Element "{{azure-ref}}" wstawia unikatowy ciąg odwołania w treści odpowiedzi. Wartość jest zgodna z polem TrackingReference w dziennikach FrontdoorAccessLog
i FrontdoorWebApplicationFirewallLog
.
Konfigurowanie niestandardowego kodu stanu odpowiedzi i komunikatu przy użyciu programu PowerShell
Wykonaj następujące kroki, aby skonfigurować niestandardowy kod stanu odpowiedzi i komunikat przy użyciu programu PowerShell.
Konfigurowanie środowiska programu PowerShell
Program Azure PowerShell udostępnia zestaw poleceń cmdlet, które pozwalają zarządzać zasobami platformy Azure przy użyciu modelu usługi Azure Resource Manager.
Możesz zainstalować program Azure PowerShell w maszynie lokalnej i używać go w dowolnej sesji programu PowerShell. Postępuj zgodnie z instrukcjami na stronie, aby zalogować się przy użyciu poświadczeń platformy Azure. Następnie zainstaluj moduł Az programu PowerShell.
Nawiązywanie połączenia z platformą Azure za pomocą interaktywnego okna dialogowego logowania
Connect-AzAccount
Install-Module -Name Az
Upewnij się, że masz zainstalowaną bieżącą wersję modułu PowerShellGet. Uruchom następujące polecenie i otwórz ponownie program PowerShell.
Install-Module PowerShellGet -Force -AllowClobber
Instalowanie modułu Az.FrontDoor
Install-Module -Name Az.FrontDoor
Tworzenie grupy zasobów
Na platformie Azure możesz przydzielić powiązane zasoby do grupy zasobów. W tym miejscu utworzymy grupę zasobów przy użyciu polecenia New-AzResourceGroup.
New-AzResourceGroup -Name myResourceGroupWAF
Tworzenie nowych zasad zapory aplikacji internetowej z niestandardową odpowiedzią
W poniższym przykładzie pokazano, jak utworzyć nowe zasady zapory aplikacji internetowej z niestandardowym kodem stanu odpowiedzi ustawionym na wartość 405 i komunikatem "You are blocked" przy użyciu polecenia New-AzFrontDoorWafPolicy.
# WAF policy setting
New-AzFrontDoorWafPolicy `
-Name myWAFPolicy `
-ResourceGroupName myResourceGroupWAF `
-EnabledState enabled `
-Mode Detection `
-CustomBlockResponseStatusCode 405 `
-CustomBlockResponseBody "<html><head><title>You are blocked.</title></head><body></body></html>"
Zmodyfikuj niestandardowy kod odpowiedzi lub treść odpowiedzi istniejących zasad zapory aplikacji internetowej przy użyciu polecenia Update-AzFrontDoorFireWallPolicy.
# modify WAF response code
Update-AzFrontDoorFireWallPolicy `
-Name myWAFPolicy `
-ResourceGroupName myResourceGroupWAF `
-EnabledState enabled `
-Mode Detection `
-CustomBlockResponseStatusCode 403
# modify WAF response body
Update-AzFrontDoorFireWallPolicy `
-Name myWAFPolicy `
-ResourceGroupName myResourceGroupWAF `
-CustomBlockResponseBody "<html><head><title>Forbidden</title></head><body>{{azure-ref}}</body></html>"
Następne kroki
Dowiedz się więcej o usłudze Azure Web Application Firewall w usłudze Azure Front Door.