Configuración de una respuesta personalizada para el Firewall de aplicaciones web de Azure
Este artículo describe cómo configurar una página de respuesta personalizada cuando Azure Web Application Firewall bloquee una solicitud.
De forma predeterminada, cuando Azure Web Application Firewall bloquea una solicitud debido a una regla coincidente, devuelve un código de estado 403 con el mensaje "La solicitud está bloqueada". El mensaje predeterminado también incluye la cadena de referencia de seguimiento que se usa para vincular las entradas de registro de la solicitud. Puede configurar un código de estado de respuesta personalizada y un mensaje personalizado con una cadena de referencia para el caso de uso.
Configuración de un código de estado de respuesta personalizado y un mensaje mediante el portal
Puede configurar un código de estado de respuesta personalizado y un cuerpo en Configuración de directiva en el portal de Azure Web Application Firewall.
En el ejemplo anterior, conservamos el código de respuesta como 403 y configuramos un breve mensaje "Póngase en contacto con nosotros" como se muestra en la siguiente imagen:
"{{azure-ref}}" inserta la cadena de referencia única en el cuerpo de la respuesta. El valor coincide con el campo TrackingReference de los registros FrontDoorAccessLog
y FrontDoorWebApplicationFirewallLog
.
"{{azure-ref}}" inserta la cadena de referencia única en el cuerpo de la respuesta. El valor coincide con el campo TrackingReference de los registros FrontdoorAccessLog
y FrontdoorWebApplicationFirewallLog
.
Configuración de un código de estado de respuesta personalizado y un mensaje mediante PowerShell
Siga los siguientes pasos para configurar un código de estado de respuesta personalizado y un mensaje mediante PowerShell.
Configuración del entorno de PowerShell
Azure PowerShell ofrece un conjunto de cmdlets que usan el modelo Azure Resource Manager para administrar los recursos de Azure.
Puede instalar Azure PowerShell en el equipo local y usarlo en cualquier sesión de PowerShell. Siga las instrucciones de la página para iniciar sesión con sus credenciales de Azure. Luego instale el módulo Az de PowerShell.
Conexión a Azure con un cuadro de diálogo interactivo para el inicio de sesión
Connect-AzAccount
Install-Module -Name Az
Asegúrese de tener instalada la versión actual de PowerShellGet. Ejecute el siguiente comando y vuelva a abrir PowerShell.
Install-Module PowerShellGet -Force -AllowClobber
Instalación del módulo Az.FrontDoor
Install-Module -Name Az.FrontDoor
Crear un grupo de recursos
En Azure, puede asignar recursos relacionados a un grupo de recursos. Aquí creamos un grupo de recursos con New-AzResourceGroup.
New-AzResourceGroup -Name myResourceGroupWAF
Creación de una directiva de WAF con una respuesta personalizada
En el ejemplo siguiente se muestra cómo crear una nueva directiva de firewall de aplicaciones web (WAF) con un código de estado de respuesta personalizado establecido en 405 y un mensaje de "You are blocked" (Está bloqueado) mediante 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>"
Modifique la configuración del cuerpo de la respuesta o el código de respuesta personalizados de una directiva de WAF existente mediante el comando 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>"
Pasos siguientes
Más información sobre Azure Web Application Firewall en Azure Front Door.