Udostępnij za pośrednictwem


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.

Zrzut ekranu przedstawiający ustawienia zasad zapory aplikacji internetowej platformy Azure.

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:

Zrzut ekranu przedstawiający przykład odpowiedzi niestandardowej.

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.