Ejercicio: Prueba de Front Door y de la directiva WAF

Completado

El último paso consiste en probar el entorno de Front Door y verificar si las reglas de enrutamiento están configuradas correctamente para dirigir el tráfico web. También vamos a probar la disponibilidad de los servidores web de origen y a comprobar si todavía se puede tener acceso al contenido almacenado en caché cuando los servidores están inactivos.

Prueba de la distribución del tráfico para la aplicación web de registro de vehículos

  1. En Cloud Shell, ejecute el comando siguiente para generar la dirección URL del punto de conexión de Front Door.

    echo https://$(az afd endpoint show \
        --profile-name vehicleFrontDoor \
        --endpoint-name $endpoint \
        --resource-group $RG \
        --query hostName \
        --output tsv)
    
  2. Mediante un explorador web, vaya al sitio web de la URL que se devuelve en el comando anterior. Esta URL es la dirección del punto de conexión que creó en el perfil de Front Door. Compruebe que se muestra la página principal de la aplicación web de registro de vehículos. Observe que el nombre del servidor web se muestra en la página para informarle de qué instancia atiende la solicitud.

    Screenshot of web server 1 responding to web browser request.

  3. Presione F5 varias veces en el teclado para actualizar el explorador. Observe que el nombre del servidor cambia entre webServer1 y webServer2. Ambos servidores web se encuentran en la misma región y tienen una latencia similar. Por lo tanto, ambos servidores tienen las mismas posibilidades de atender las solicitudes.

    Screenshot of web server 2 responding to web browser request.

Probar el enrutamiento

Ahora vamos a probar el enrutamiento de la configuración de ruta a cada sitio web. Ha configurado una ruta que coincide con /VehicleRegistration/ y /VehicleRegistration/* de modo que vaya al punto de conexión privado para los servidores web. En el caso de las solicitudes que coinciden con /LicenseRenewal/ y /LicenseRenewal/*, las enruta a App Service. En este laboratorio, la comunicación entre Azure Front Door y los recursos de origen es privada porque usa el servicio Private Link para establecer la conectividad.

  1. Para probar el enrutamiento a otras páginas del sitio web de registro de vehículos, seleccione Register a Vehicle (Registrar un vehículo).

    Screenshot of web server 1 register a vehicle link.

  2. Observe que la dirección URL ha cambiado para que contenga la ruta de acceso /VehicleRegistration/Create. Dado que tenemos el patrón de coincidencia/VehicleRegistration/*, el carácter comodín coincide con cualquier elemento que aparezca después de / y se enruta a los servidores web que hospedan el sitio web de registro de vehículos.

    Screenshot of vehicle registration page.

  3. Ahora vamos a probar el enrutamiento al sitio web de renovación de permisos de conducir. Cambie la ruta de acceso de /VehicleRegistration/Create a /LicenseRenewal/. Esta ruta de acceso se enruta al origen de App Service.

    Screenshot of license renewal home page.

  4. Seleccione Renew a License (Renovar un permiso de conducir) y verá que la ruta de acceso cambia a /LicenseRenewal/Create. Al igual que en el caso de la ruta para registrar vehículos, hay un patrón de coincidencia /LicenseRenewal/* con un carácter comodín que coincide con cualquier elemento que aparezca después de / y dirige ese tráfico a App Service.

    Screenshot of renew a license page.

Con esta configuración, puede dirigir a los usuarios a ambos sitios web mediante Front Door. Puede configurar un dominio personalizado que se pueda recordar fácilmente y dirigir a los usuarios a la página correcta que necesitan. Con Front Door puede expandirse para hospedar varios sitios web, habilitar el almacenamiento en caché para mejorar el rendimiento de los recursos estáticos y ofrecer una aplicación web altamente escalable y disponible.

Prueba de la directiva de seguridad

  1. Descargue e instale Go para Windows. Use toda la configuración predeterminada durante la instalación. Necesita Go para ejecutar la aplicación GoTestWAF.

  2. Descargue e instale Git para Windows. Use toda la configuración predeterminada durante la instalación. Necesita Git para clonar el repositorio gotestwaf en el equipo local.

  3. Una vez que haya instalado Go y Git para Windows, abra Git Bash y ejecute git clone https://github.com/wallarm/gotestwaf.git para descargar los archivos de GoTestWAF en el equipo local.

    Screenshot of cloning the gotestwaf repository with Git.

  4. Cambie el directorio a la carpeta gotestwaf con el comando cd gotestwaf.

    Screenshot of changing directory to gotestwaf folder with Git.

  5. Ahora ejecute el comando siguiente para probar si la directiva de seguridad funciona. Reemplace <EVALUATE_SECURITY_SOLUTION_URL> por la dirección URL del punto de conexión del principio de la unidad.

    go run ./cmd --url=<EVALUATED_SECURITY_SOLUTION_URL> --verbose
    
  6. Si ha configurado correctamente las opciones de directiva de WAF, debería aparecer Baseline attack status code: 999 en la salida. Este es el mismo código de estado de respuesta que configuró si WAF bloquea una solicitud.

    Screenshot of running GoTestWAF with Git and displaying 999 status code.

Ya tiene una aplicación web de vehículos motorizados totalmente funcional protegida mediante una directiva de Web Application Firewall (WAF).