GSP877
Descripción general
El balanceo de cargas HTTP(S) de Google Cloud se implementa en el perímetro de la red de Google, en los puntos de presencia (PoP) de Google de todo el mundo. El tráfico de usuario dirigido a un balanceador de cargas HTTP(S) ingresa al POP que se encuentra más cerca del usuario. Luego, su carga se balancea a través de la red global de Google al backend más cercano que cuente con capacidad disponible suficiente.
Cloud Armor es el sistema de detección de firewall de aplicación web (WAF) y denegación de servicio distribuido de Google. Cloud Armor está estrechamente vinculado al balanceador de cargas HTTP de Google Cloud y protege las aplicaciones de los clientes de Google Cloud de los ataques desde Internet.
reCAPTCHA Enterprise es un servicio que se basa en la API de reCAPTCHA y protege tu sitio contra el spam y el abuso con técnicas avanzadas de análisis de riesgos para distinguir entre humanos y bots. La administración de bots de Cloud Armor proporciona una solución integral que incorpora la detección y la puntuación de bots de reCAPTCHA Enterprise con la aplicación de Cloud Armor en el perímetro de la red para proteger las aplicaciones downstream.
En este lab, configurarás un balanceador de cargas HTTP con un backend, como se muestra en el siguiente diagrama. Configuras una clave de sitio del token de sesión de reCAPTCHA y la incorporas en tu sitio web. También configuraste el redireccionamiento al desafío manual de reCAPTCHA Enterprise. Luego, configurarás una política de administración de bots de Cloud Armor para ver cómo la detección de bots protege tu aplicación del tráfico malicioso de bots.

Qué aprenderás
En este lab, aprenderás a realizar las siguientes tareas:
- Configurar un balanceador de cargas HTTP con verificaciones de estado adecuadas
- Crear una clave de sitio de página de desafío del WAF de reCAPTCHA y asociarla a una política de seguridad de Cloud Armor
- Crear una clave de sitio del token de sesión de reCAPTCHA y, luego, instalarla en tus páginas web
- Crear una política de administración de bots de Cloud Armor
- Validar que la política de administración de bots esté manejando el tráfico en función de las reglas configuradas
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
- Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón para abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debes usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
-
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}}
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}}
También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud.
Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
-
Haz clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
Antes de comenzar
- En Cloud Shell, configura tu ID del proyecto:
export PROJECT_ID=$(gcloud config get-value project)
echo $PROJECT_ID
gcloud config set project $PROJECT_ID
Habilita las APIs
- Habilita todos los servicios necesarios con el siguiente comando:
gcloud services enable compute.googleapis.com
gcloud services enable logging.googleapis.com
gcloud services enable monitoring.googleapis.com
gcloud services enable recaptchaenterprise.googleapis.com
Ya tienes todo listo para comenzar la primera tarea.
Tarea 1: Configura reglas de firewall para permitir el tráfico HTTP y SSH a los backends
Para este lab, usarás la red de VPC predeterminada creada en tu proyecto cuando se inició el lab.
En esta sección, configurarás reglas de firewall para permitir el tráfico HTTP a los backends desde las verificaciones de estado de Google Cloud y el balanceador de cargas. Luego, configurarás una regla de firewall para permitir SSH en las instancias.
Crea una regla de firewall para permitir el tráfico HTTP a los backends.
Las verificaciones de estado determinan qué instancias de un balanceador de cargas pueden recibir conexiones nuevas. En el balanceo de cargas HTTP, los sondeos de verificación de estado de tus instancias de balanceo de cargas provienen de las direcciones dentro de los rangos 130.211.0.0/22 y 35.191.0.0/16. Tus reglas de firewall de VPC deben permitir esas conexiones. Además, los balanceadores de cargas se comunican con el backend en el mismo rango de IP.
Crea una regla de firewall para permitir el tráfico HTTP a los backends:
- En el menú principal de la consola de Google Cloud, en la sección Productos, navega a Red de VPC y, luego, selecciona Firewall.
- Observa las reglas de firewall existentes de ICMP, internas, RDP y SSH. Cada proyecto de Google Cloud comienza con la red predeterminada y estas reglas de firewall.
- Haz clic en Crear regla de firewall.
- Establece los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad |
Valor (escribe el valor o selecciona la opción como se especifica) |
Nombre |
default-allow-health-check |
Red |
predeterminada |
Destinos |
Etiquetas de destino especificadas |
Etiquetas de destino |
allow-health-check |
Filtro de fuente |
Rangos de IPv4 |
Rangos de IPv4 de origen |
130.211.0.0/22, 35.191.0.0/16 |
Protocolos y puertos |
Protocolos y puertos especificados; marca tcp Escribe 80 para el número de puerto |
Nota: Asegúrate de ingresar los dos rangos IPv4 de origen, uno a la vez, y de agregar un ESPACIO entre ellos.
- Haz clic en Crear.
De manera alternativa, en la línea de comandos de gCloud, usa el siguiente comando:
gcloud compute firewall-rules create default-allow-health-check --direction=INGRESS --priority=1000 --network=default --action=ALLOW --rules=tcp:80 --source-ranges=130.211.0.0/22,35.191.0.0/16 --target-tags=allow-health-check
- De manera similar, crea una regla de firewall para permitir el acceso SSH a las instancias:
gcloud compute firewall-rules create allow-ssh --direction=INGRESS --priority=1000 --network=default --action=ALLOW --rules=tcp:22 --source-ranges=0.0.0.0/0 --target-tags=allow-health-check
Haz clic en Revisar mi progreso para verificar el objetivo.
Configurar reglas de firewall para permitir el tráfico HTTP y SSH a los backends
Tarea 2: Configura las plantillas de instancias y crea los grupos de instancias
Un grupo de instancias administrado usa una plantilla de instancias para crear un grupo de instancias idénticas. Úsalas para crear los backends del balanceador de cargas HTTP.
Configura las plantillas de instancias
Una plantilla de instancias es un recurso que puedes usar para crear instancias de VM y grupos de instancias administrados. Las plantillas de instancias definen el tipo de máquina, la imagen de disco de arranque, la subred, las etiquetas y otras propiedades de las instancias.
Para crear una plantilla de instancias, haz lo siguiente:
- En el menú principal de la consola, en la sección Productos, navega a Compute Engine y, luego, en la sección Máquinas virtuales, selecciona Plantillas de instancias.
- En el encabezado de la página Plantillas de instancias, haz clic en Crear plantilla de instancias.
- En Nombre, escribe lb-backend-template.
- En Ubicación, selecciona Global.
- En Serie, selecciona N1.
- Haz clic en Opciones avanzadas.
- En la pestaña Administración, desplázate hacia abajo hasta la sección Automatización y, luego, inserta la siguiente secuencia de comandos en el campo Secuencia de comandos de inicio:
#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo a2ensite default-ssl
sudo a2enmod ssl
sudo su
vm_hostname="$(curl -H "Metadata-Flavor:Google" \
http://metadata.google.internal/computeMetadata/v1/instance/name)"
echo "Page served from: $vm_hostname" | \
tee /var/www/html/index.html
- En Opciones avanzadas, haz clic en la pestaña Redes y, en el cuadro de texto Etiquetas de red, ingresa allow-health-check.
- Establece los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad |
Valor (escribe el valor o selecciona la opción como se especifica) |
Red (en Interfaces de red) |
predeterminada |
Subred (en Interfaces de red) |
predeterminada () |
Etiquetas de red |
allow-health-check |
Nota: La etiqueta de red allow-health-check garantiza que se apliquen las reglas de firewall de verificación de estado HTTP y SSH a estas instancias.
- Haz clic en Crear.
Espera a que se cree la plantilla de instancias.
Crea el grupo de instancias administrado
Para crear el grupo de instancias administrado, haz lo siguiente:
-
En el menú de navegación de Compute Engine, haz clic en Grupos de instancias en la sección Grupo de instancias.
-
Haz clic en Crear grupo de instancias.
-
Asegúrate de que esté seleccionado Nuevo grupo de instancias administrado (sin estado).
-
Establece los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad |
Valor (escribe el valor o selecciona la opción como se especifica) |
Nombre |
lb-backend-example |
Plantilla de instancias |
lb-backend-template |
Ubicación |
Zona única |
Región |
|
Zona |
|
Escalado automático |
Establece el Modo de ajuste de escala automático en Desactivado: no ajusta la escala automáticamente. |
Cantidad mínima de instancias |
1 |
- Haz clic en Crear.
Agrega un puerto con nombre al grupo de instancias
- En el grupo de instancias, define un servicio HTTP y asigna un nombre al puerto pertinente pegando el siguiente fragmento de código en Cloud Shell:
gcloud compute instance-groups set-named-ports lb-backend-example \
--named-ports http:80 \
--zone {{{project_0.startup_script.lab_zone|lab_zone}}}
El servicio de balanceo de cargas reenvía el tráfico al puerto especificado.
Haz clic en Revisar mi progreso para verificar el objetivo.
Configurar las plantillas de instancias y crear los grupos de instancias administrados
Tarea 3: Configura el balanceador de cargas HTTP
En esta sección, configurarás el balanceador de cargas HTTP para enviar tráfico a tu backend lb-backend-example.
Inicia la configuración
-
En el menú de navegación de la consola, haz clic en Ver todos los productos y, luego, selecciona Servicios de red. Se te dirigirá automáticamente a la página Balanceo de cargas.
-
Haz clic en Crear balanceador de cargas.
-
Asegúrate de que esté seleccionado Balanceador de cargas de aplicaciones (HTTP/HTTPS) y haz clic en Siguiente.
-
Asegúrate de que esté seleccionada la opción Orientado al público (externo) y haz clic en Siguiente.
-
Asegúrate de que esté seleccionada la opción Ideal para cargas de trabajo globales y haz clic en Siguiente.
-
Asegúrate de que esté seleccionado Balanceador de cargas de aplicaciones externo global y haz clic en Siguiente.
-
Selecciona Configurar.
-
En el cuadro de texto Nombre del balanceador de cargas, ingresa http-lb.
Configura el frontend
- Haz clic en Configuración de frontend.
- Especifica los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad |
Valor (escribe el valor o selecciona la opción como se especifica) |
Protocolo |
HTTP |
Versión de IP |
IPv4 |
Dirección IP |
Efímera |
Puerto |
80 |
- Haz clic en Listo.
Configura el backend
Los servicios de backend dirigen el tráfico entrante a uno o más backends adjuntos. Cada backend está compuesto por un grupo de instancias y metadatos con capacidad de entrega adicional.
- En la página Crear balanceador de cargas de aplicaciones externo global, haz clic en Configuración de backend.
- En Servicios y buckets de backend, haz clic en Crear un servicio de backend.
- Establece los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad |
Valor (selecciona la opción como se especifica) |
Nombre |
http-backend |
Protocolo |
HTTP |
Puerto con nombre |
http |
Grupo de instancias (en Nuevo backend) |
lb-backend-example |
Números de puerto |
80 |
Modo de almacenamiento en caché |
Usar configuración de origen en función de los encabezados de control de caché |
Verificación de estado |
Crear una verificación de estado |
- En la página Verificación de estado, establece los siguientes valores y deja el resto con la configuración predeterminada:

- Establece los siguientes valores y deja el resto con la configuración predeterminada:
Propiedad |
Valor (selecciona la opción como se especifica) |
Nombre |
http-health-check |
Protocolo |
TCP |
Puerto |
80 |
Nota: Las verificaciones de estado determinan qué instancias pueden recibir nuevas conexiones.
Esta verificación de estado HTTP sondea las instancias cada 5 segundos, espera hasta 5 segundos para recibir una respuesta y considera que 2 intentos exitosos o 2 intentos con errores indican que están en buen estado o en mal estado, respectivamente.
- Haz clic en Crear para crear una verificación de estado.d
- Marca la casilla Habilitar registro.
- Asegúrate de que la Tasa de muestreo esté configurada en 1.
- Haz clic en Crear para crear el servicio de backend y, luego, en Aceptar.
Revisa y crea el balanceador de cargas HTTP
Las reglas de host y ruta de acceso determinan cómo se dirige el tráfico. Por ejemplo, puedes dirigir el tráfico de video a un backend y el tráfico estático a otro. Sin embargo, no configuraremos dichas reglas en este lab.
- Haz clic en Revisar y finalizar (opcional).

- Revisa los Servicios de backend y el Frontend.
- Haz clic en Crear.
Espera a que se cree el balanceador de cargas.
- Haz clic en el nombre del balanceador de cargas (http-lb).
- Anota la dirección IPv4 del balanceador de cargas para la siguiente tarea. En este lab, se hará referencia a ella como
[LB_IP_v4]
.
Haz clic en Revisar mi progreso para verificar el objetivo.
Configurar el balanceador de cargas HTTP
Prueba el balanceador de cargas HTTP
Ahora que creaste el balanceador de cargas HTTP para tus backends, verifica que el tráfico se desvíe al servicio de backend.
- Para probar el acceso de IPv4 al balanceador de cargas HTTP, abre una nueva pestaña en tu navegador y navega a http://[LB_IP_v4]. Asegúrate de reemplazar
[LB_IP_v4]
por la dirección IPv4 del balanceador de cargas.
Note: Puedes tardar hasta 5 minutos en acceder al balanceador de cargas HTTP. Mientras tanto, es probable que recibas errores 404 o 502. Sigue intentando hasta que veas que se carga la página.
Tarea 4: Crea e implementa un token de sesión de reCAPTCHA y una clave de sitio de página de desafío
La integración de reCAPTCHA Enterprise para WAF y Google Cloud Armor ofrece las siguientes funciones: página de desafío de reCAPTCHA, tokens de acción de reCAPTCHA y tokens de sesión de reCAPTCHA. En esta tarea, implementarás la clave de sitio del token de sesión de reCAPTCHA y el sitio de la página de desafío del WAF de reCAPTCHA.
Crea un token de sesión de reCAPTCHA y una clave de sitio de página de desafío del WAF
Antes de crear la clave de sitio del token de sesión y la clave de sitio de la página de desafío, verifica que hayas habilitado la API de reCAPTCHA Enterprise como se indica en la sección anterior Habilita las APIs.
El JavaScript de reCAPTCHA establece un token de sesión de reCAPTCHA como una cookie en el navegador del usuario final después de la evaluación. El navegador del usuario final adjunta la cookie y la actualiza mientras el JavaScript de reCAPTCHA permanezca activo.
- Crea la clave de sitio del token de sesión de reCAPTCHA y habilita la función WAF para la clave:
gcloud recaptcha keys create --display-name=test-key-name \
--web --allow-all-domains --integration-type=score --testing-score=0.5 \
--waf-feature=session-token --waf-service=ca
El resultado del comando anterior te proporciona la clave de sitio del token de sesión que creaste. Regístralo para usarlo más adelante en esta tarea.
También estableces el servicio de WAF en Cloud Armor para habilitar la integración de Cloud Armor.
Nota: Estás usando el tipo de integración score, que se aprovecha en la política de Cloud Armor. También puedes usar checkbox y invisible.
También estableces una puntuación de prueba cuando creas la clave para validar que las políticas de administración de bots creadas con Cloud Armor funcionan como se espera. Replicar el tráfico de bots no es fácil, por lo que esta es una buena forma de probar la función.
- Crea la clave de sitio de la página de desafío del WAF de reCAPTCHA y habilita la función de WAF para la clave. Puedes usar la función de página de desafío de reCAPTCHA para redireccionar las solicitudes entrantes a reCAPTCHA Enterprise y determinar si cada solicitud es potencialmente fraudulenta o legítima. Más tarde, asocias esta clave con la política de seguridad de Cloud Armor para habilitar el desafío manual. En los pasos posteriores, este lab se refiere a esta clave como
CHALLENGE-PAGE-KEY
.
gcloud recaptcha keys create --display-name=challenge-page-key \
--web --allow-all-domains --integration-type=INVISIBLE \
--waf-feature=challenge-page --waf-service=ca
- Navega a Menú de navegación (
) > Seguridad > reCAPTCHA. Deberías ver las claves que creaste en la lista Claves de reCAPTCHA:
Implementa la clave de sitio del token de sesión de reCAPTCHA
- En el menú principal de la consola de Google Cloud, navega a Compute Engine y, luego, selecciona Instancias de VM. Ubica la VM en tu grupo de instancias y haz clic en SSH en la columna Conectar. Haz clic en Autorizar en la página a la que se te redireccionó.

- Ve al directorio raíz del servidor web y cambia el usuario a raíz ingresando el siguiente código en la shell SSH en el navegador:
cd /var/www/html/
sudo su
- Actualiza la página de destino
index.html
y, luego, incorpora la clave de sitio del token de sesión de reCAPTCHA. La clave de sitio del token de sesión (que registraste antes) se establece en la sección head de tu página de destino de la siguiente manera:
src="https://www.google.com/recaptcha/enterprise.js?render=<SESSION_TOKEN_SITE_KEY>&waf=session" async defer>
Recuerda reemplazar <SESSION_TOKEN_SITE_KEY>
por el token del sitio antes de ejecutar el siguiente comando:
echo '<!doctype html><html><head><title>ReCAPTCHA Session Token</title><script src="https://www.google.com/recaptcha/enterprise.js?render=<SESSION_TOKEN_SITE_KEY>&waf=session" async defer></script></head><body><h1>Main Page</h1><p><a href="/good-score.html">Visit allowed link</a></p><p><a href="/bad-score.html">Visit blocked link</a></p><p><a href="/median-score.html">Visit redirect link</a></p></body></html>' > index.html
- Crea otras tres páginas de muestra para probar las políticas de administración de bots:
echo '<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"></head><body><h1>Congrats! You have a good score!!</h1></body></html>' > good-score.html
echo '<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"></head><body><h1>Sorry, You have a bad score!</h1></body></html>' > bad-score.html
echo '<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"></head><body><h1>You have a median score that we need a second verification.</h1></body></html>' > median-score.html
Valida que puedas acceder a todas las páginas web abriéndolas en tu navegador. Asegúrate de reemplazar [LB_IP_v4]
por la dirección IPv4 del balanceador de cargas.
- Abre
http://[LB_IP_v4]/index.html
. Verificas que la implementación de reCAPTCHA funciona cuando ves "protected by reCAPTCHA" en la esquina inferior derecha de la página:

- Haz clic en cada uno de los vínculos.

- Valida que puedes acceder a todas las páginas.

Haz clic en Revisar mi progreso para verificar el objetivo.
Implementar el token de sesión de reCAPTCHA y la clave del sitio de la página de desafío
Tarea 5: Crea reglas de política de seguridad de Cloud Armor para la administración de bots
En esta sección, usarás las reglas de administración de bots de Cloud Armor para permitir, denegar y redireccionar solicitudes en función de la puntuación de reCAPTCHA.
- En Cloud Shell, crea una política de seguridad con gcloud:
gcloud compute security-policies create recaptcha-policy \
--description "policy for bot management"
- Para usar el desafío manual de reCAPTCHA Enterprise para distinguir clientes humanos de automatizados, asocia la clave del sitio de desafío del WAF de reCAPTCHA (CHALLENGE-PAGE-KEY) que creaste anteriormente para un desafío manual con la política de seguridad. En la siguiente secuencia de comandos, recuerda reemplazar “CHALLENGE-PAGE-KEY” por la clave que creaste anteriormente:
gcloud compute security-policies update recaptcha-policy \
--recaptcha-redirect-site-key "CHALLENGE-PAGE-KEY"
- Agrega una regla de administración de bots para permitir el tráfico si la ruta de la URL coincide con good-score.html y tiene una puntuación superior a 0.4:
gcloud compute security-policies rules create 2000 \
--security-policy recaptcha-policy\
--expression "request.path.matches('good-score.html') && token.recaptcha_session.score > 0.4"\
--action allow
- Agrega una regla de administración de bots para denegar el tráfico si la ruta de URL coincide con bad-score.html y tiene una puntuación inferior a 0.6:
gcloud compute security-policies rules create 3000 \
--security-policy recaptcha-policy\
--expression "request.path.matches('bad-score.html') && token.recaptcha_session.score < 0.6"\
--action "deny-403"
- Agrega una regla de administración de bots para redireccionar el tráfico a Google reCAPTCHA si la ruta de la URL coincide con median-score.html y tiene una puntuación igual a 0.5:
gcloud compute security-policies rules create 1000 \
--security-policy recaptcha-policy\
--expression "request.path.matches('median-score.html') && token.recaptcha_session.score == 0.5"\
--action redirect \
--redirect-type google-recaptcha
- Adjunta la política de seguridad al servicio de backend
http-backend
:
gcloud compute backend-services update http-backend \
--security-policy recaptcha-policy --global
-
En el menú principal de la consola de Google Cloud, navega a Seguridad de red y, luego, selecciona Políticas de Cloud Armor.
-
Haz clic en recaptcha-policy
.
Tu política debería ser similar a la siguiente:

Haz clic en Revisar mi progreso para verificar el objetivo.
Crear reglas de política de seguridad de Cloud Armor para la administración de bots
Tarea 6: Valida la administración de bots con Cloud Armor
- Abre un navegador y escribe la URL
http://[LB_IP_v4]/index.html
. Navega a "Visit allowed link".

-
Abre una nueva ventana en modo Incógnito para asegurarte de tener una nueva sesión.
-
Ingresa la URL http://[LB_IP_v4]/index.html
y navega a "Visit blocked link". Deberías recibir un error HTTP 403:

Nota: Si no se muestra un error 403 Forbidden, es posible que debas esperar más tiempo para que las reglas de recaptcha surtan efecto. Espera 5 minutos y vuelve a intentarlo. Asegúrate de usar una nueva ventana de incógnito para probar cada vínculo.
-
Abre una nueva ventana en modo Incógnito para asegurarte de tener una nueva sesión.
-
Ingresa la URL http://[LB_IP_v4]/index.html
y navega a "Visit redirect link". Deberías ver el redireccionamiento a Google reCAPTCHA y la página de desafío manual como se muestra a continuación:

Nota: Si la interacción del usuario pasa la evaluación, reCAPTCHA Enterprise emite una cookie de exención. El navegador adjunta esta cookie de exención a las solicitudes posteriores del usuario al mismo sitio hasta que la cookie vence. De forma predeterminada, la cookie de exención vence después de tres horas.
Nota: Para evitar que el software automatizado participe en acciones abusivas en tu sitio, reCAPTCHA usa un motor de análisis de riesgos avanzado y CAPTCHAs adaptables. Esto se logra mientras se permite que los usuarios válidos pasen con facilidad. Si el algoritmo cree que eres una persona, validará el reCaptcha sin que debas realizar ninguna acción adicional. De lo contrario, mostrará una variedad de imágenes que debes categorizar antes de continuar. De forma predeterminada, solo se solicitará que el tráfico más sospechoso resuelva un captcha.
Si no se te presenta un desafío para resolver, puedes consultar los registros de políticas y verificar que se te eximió de resolver un desafío.
Verifica los registros de Cloud Armor
Explora los registros de la política de seguridad para validar que la administración de bots funcionó como se esperaba.
- En la consola, ve al menú de navegación > Seguridad de red > Políticas de Cloud Armor.
- Haz clic en recaptcha-policy.
- Haz clic en Registros.
- Haz clic en Ver registros de políticas.
- A continuación, se muestra la consulta en MQL(Monitoring Query Language). Cópiala y pégala en el editor de consultas:
resource.type:(http_load_balancer) AND jsonPayload.enforcedSecurityPolicy.name:(recaptcha-policy)
- Haz clic en Ejecutar consulta.
- Busca una entrada de registro en Resultados de la consulta en la que la solicitud sea para
http://[LB_IP_v4]/good-score.html
. Expande jsonPayload.Expand enforcedSecurityPolicy.

Nota: Si no ves entradas de registro, espera un par de minutos para que se propague la política, actualiza las URLs que usaste antes y, luego, vuelve a revisar los registros.
- Repite el mismo procedimiento para
http://[LB_IP_v4]/bad-score.html
y http://[LB_IP_v4]/median-score.html
.


Ten en cuenta que configuredAction
se configuró como ALLOW, DENY o GOOGLE_RECAPTCHA con el nombre recaptcha-policy.
Nota: Las políticas de seguridad de Cloud Armor crean registros que puedes explorar para determinar cuándo se rechaza o permite el tráfico, además de conocer su origen.
Haz clic en Revisar mi progreso para verificar el objetivo.
Validar la administración de bots con Cloud Armor
¡Felicitaciones!
Implementaste correctamente la administración de bots con Cloud Armor. Configuraste un balanceador de cargas HTTP. Luego, creaste y aplicaste una clave de sitio del token de sesión de reCAPTCHA en una página web. También creaste una clave de sitio de la página de desafío. Configuraste una política de administración de bots de Cloud Armor y validaste cómo maneja las solicitudes en función de las reglas. Exploraste los registros de políticas de seguridad para identificar por qué se permitió, bloqueó o redireccionó el tráfico.
Última actualización del manual: 17 de julio de 2025
Prueba más reciente del lab: 17 de julio de 2025
Copyright 2025 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.