Funciones para la integración con proveedores de servicios de WAF

En este documento, encontrarás ayuda para comprender las funciones de reCAPTCHA para WAF y determinar cuáles coinciden mejor con tu caso de uso.

reCAPTCHA para WAF ofrece las siguientes funciones que puedes usar para integrar con proveedores de servicios de firewall de aplicación web (WAF):

Descripción general de las funciones

En la siguiente tabla, se muestra una breve comparación de los tokens de acción de reCAPTCHA, los tokens de sesión de reCAPTCHA, la página de desafío de reCAPTCHA y reCAPTCHA Express:

Categoría de comparación Tokens de acción de reCAPTCHA Tokens de sesión de reCAPTCHA Página de desafío de reCAPTCHA reCAPTCHA Express
Caso de uso Usa tokens de acción de reCAPTCHA para proteger las acciones de los usuarios, como acceder o comentar publicaciones. Usa tokens de sesión de reCAPTCHA para proteger toda la sesión del usuario en el dominio del sitio. Usa la página de desafío de reCAPTCHA cuando sospeches que hay actividad de spam dirigida a tu sitio y necesites detectar bots.

Este método interrumpe la actividad de un usuario porque este debe verificar un desafío de CAPTCHA.

Usa reCAPTCHA Express cuando tu entorno no admita la integración de JavaScript de reCAPTCHA ni los SDKs para dispositivos móviles.
Plataformas compatibles Sitios web y aplicaciones para dispositivos móviles Sitios web Sitios web APIs, sitios web, aplicaciones para dispositivos móviles y dispositivos de la IoT, como TVs y consolas de juegos
Esfuerzo de integración Medio

Para realizar la integración, debes hacer lo siguiente:

  • Instala el código JavaScript de reCAPTCHA en las páginas individuales de tu sitio o instala el SDK de reCAPTCHA para dispositivos móviles en tu aplicación para dispositivos móviles.
  • Adjunta el token de acción al encabezado de solicitud individual.
  • Configura las reglas de la política de seguridad de Google Cloud Armor o las políticas de firewall de reCAPTCHA para proveedores de servicios de WAF externos.
Medio

Para realizar la integración, debes hacer lo siguiente:

  • Instala el código JavaScript de reCAPTCHA en las páginas individuales de tu sitio.
  • Configura las reglas de la política de seguridad de Google Cloud Armor o las políticas de firewall de reCAPTCHA para proveedores de servicios de WAF externos.
Baja

La integración requiere que configures las reglas de la política de seguridad de Google Cloud Armor o las políticas de firewall de reCAPTCHA para proveedores de servicios de WAF externos.

Baja

La integración requiere que configures reCAPTCHA exprés con un proveedor de servicios de WAF o que realices una solicitud desde tu servidor de aplicaciones a reCAPTCHA.

Precisión de la detección Highest (Más alta)

Un token de acción protege las acciones individuales de los usuarios.

Alto

Un token de sesión protege toda la sesión del usuario en el dominio del sitio.

Medio

El proceso incluye redireccionamientos a la página de desafío de reCAPTCHA, que podría no recibir todos los indicadores específicos de la página. Como resultado, la detección de bots podría ser menos precisa.

Baja

Los indicadores del cliente no están disponibles.

Versión de reCAPTCHA compatible Claves de reCAPTCHA basadas en puntuación y de casilla de verificación Claves basadas en la puntuación de reCAPTCHA La página de desafío de reCAPTCHA usa la versión optimizada de reCAPTCHA para minimizar la integración. Claves basadas en la puntuación de reCAPTCHA

Puedes usar una o más funciones de reCAPTCHA para WAF en una sola aplicación. Por ejemplo, puedes aplicar un token de sesión para todas las páginas y, según la puntuación del token de sesión, redireccionar las solicitudes sospechosas a la página de desafío de reCAPTCHA. Además, puedes usar un token de acción para acciones de alto perfil, como la confirmación de la compra. Para obtener más información, consulta los ejemplos.

Tokens de acción de reCAPTCHA

Puedes usar los tokens de acción de reCAPTCHA para proteger interacciones importantes del usuario, como la confirmación de la compra en páginas web y aplicaciones para dispositivos móviles.

El flujo de trabajo de tokens de acción de reCAPTCHA consta de los siguientes pasos:

  1. Cuando un usuario final activa una acción protegida por reCAPTCHA, la página web o la aplicación para dispositivos móviles envían indicadores que se recopilan en el navegador a reCAPTCHA para su análisis.
  2. reCAPTCHA envía un token de acción a la página web o a la aplicación para dispositivos móviles.
  3. Adjunta este token de acción al encabezado de la solicitud que deseas proteger.
  4. Cuando el usuario final solicita acceso con el token de acción, el proveedor de servicios de WAF decodea y valida los atributos del token de acción en lugar de tu aplicación de backend.
  5. El proveedor de servicios de WAF aplica acciones según las reglas de la política de seguridad o de firewall configuradas, lo que corresponda.

En el siguiente diagrama de secuencias, se muestra el flujo de trabajo de tokens de acción de reCAPTCHA para sitios web:

Google Cloud Armor

Proveedor de servicios de WAF externo

En el siguiente diagrama de secuencias, se muestra el flujo de trabajo de tokens de acción de reCAPTCHA para aplicaciones para dispositivos móviles:

Tokens de sesión de reCAPTCHA

Puedes usar tokens de sesión de reCAPTCHA cuando quieras proteger toda la sesión del usuario en el dominio del sitio. Un token de sesión te permite volver a usar una evaluación de reCAPTCHA existente durante un período especificado, de modo que no se requieran más evaluaciones para un usuario en particular, lo que reduce la fricción del usuario y el total de llamadas de reCAPTCHA requeridas.

Para permitir que reCAPTCHA aprenda sobre el patrón de navegación de tus usuarios finales, te recomendamos que uses un token de sesión de reCAPTCHA en todas las páginas web de tu sitio.

El flujo de trabajo de tokens de sesión de reCAPTCHA consta de los siguientes pasos:

  1. El navegador carga el JavaScript de reCAPTCHA desde reCAPTCHA.
  2. El código JavaScript de reCAPTCHA establece un token de sesión como una cookie en el navegador del usuario final después de la evaluación.
  3. El navegador del usuario final almacena la cookie, y el JavaScript de reCAPTCHA la actualiza cada 30 minutos, siempre que el JavaScript de reCAPTCHA permanezca activo.
  4. Cuando el usuario solicita acceso con la cookie, el proveedor de servicios de WAF valida esta cookie y aplica acciones según las reglas de la política de seguridad o las reglas de la política de firewall.

En el siguiente diagrama de secuencias, se muestra el flujo de trabajo de tokens de sesión de reCAPTCHA:

Google Cloud Armor

Proveedor de servicios de WAF externo

Página de desafío de reCAPTCHA

Puedes usar la función de página de desafío de reCAPTCHA para redireccionar las solicitudes entrantes a reCAPTCHA y determinar si cada solicitud es potencialmente fraudulenta o legítima.

Esta aplicación de un redireccionamiento y un posible desafío de CAPTCHA interrumpe la actividad del usuario. Te recomendamos que la uses para filtrar bots cuando sospeches que hay actividad de spam dirigida a tu sitio.

Cuando un usuario final visita tu sitio por primera vez, se producen los siguientes eventos:

  1. En la capa de WAF, la solicitud del usuario se redirecciona a la página de reCAPTCHA challenge.
  2. reCAPTCHA responde con una página HTML incorporada con el código JavaScript de reCAPTCHA.
  3. Cuando se renderiza la página de desafío, reCAPTCHA evalúa la interacción del usuario. Si es necesario, reCAPTCHA le envía un desafío de CAPTCHA al usuario.
  4. Según el resultado de la evaluación, reCAPTCHA hace lo siguiente:

    1. Si la interacción del usuario pasa la evaluación, reCAPTCHA 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 venza. De forma predeterminada, la cookie de exención vence después de tres horas.
    2. Si la interacción del usuario no pasa la evaluación, reCAPTCHA no emite una cookie de exención.
  5. reCAPTCHA vuelve a cargar la página web con la cookie de exención si el usuario accede a ella con una llamada GET/HEAD. Si el usuario accede a la página web con una llamada POST/PUT, debe hacer clic en el vínculo para actualizar la página.

  6. El proveedor de servicios de WAF exime a las solicitudes que tienen una cookie de exención válida de que se vuelvan a redireccionar y otorga acceso a tu sitio.

En el siguiente diagrama de secuencias, se muestra el flujo de trabajo de la página de desafío de reCAPTCHA:

Google Cloud Armor

Proveedor de servicios de WAF externo

reCAPTCHA exprés para WAF

Puedes usar reCAPTCHA Express para proteger tus aplicaciones en un entorno que no admita la ejecución de reCAPTCHA JavaScript ni SDKs para dispositivos móviles integrados, por ejemplo, dispositivos de la IoT y decodificadores. Puedes configurar reCAPTCHA Express en la capa del WAF con un proveedor de servicios de WAF o en un entorno independiente en un servidor de aplicaciones. reCAPTCHA Express solo usa indicadores de backend para generar una puntuación de riesgo de reCAPTCHA.

El flujo de trabajo exprés de reCAPTCHA WAF consta de los siguientes pasos:

  1. Cuando un usuario solicita acceso a una página web, el proveedor de servicios de WAF crea una solicitud de evaluación a reCAPTCHA.
  2. reCAPTCHA evalúa la interacción del usuario y envía una puntuación de riesgo.
  3. Según la puntuación de riesgo, el proveedor de servicios de WAF o el servidor de aplicaciones permite o bloquea el acceso.

En el siguiente diagrama de secuencias, se muestra el flujo de trabajo expreso del WAF de reCAPTCHA:

¿Qué sigue?