Funciones para la integración con Google Cloud Armor

Este documento te ayuda a comprender las funciones de reCAPTCHA para Google Cloud Armor y a determinar cuál se adapta mejor a tu caso práctico.

reCAPTCHA ofrece las siguientes funciones que puedes usar para integrarlo con Google Cloud Armor:

Descripción general de funciones

reCAPTCHA para integraciones de Google Cloud Armor admite tokens de acción, tokens de sesión, páginas de verificación y reCAPTCHA express

Puedes usar una o varias funciones de reCAPTCHA para Google Cloud Armor en una sola aplicación. Por ejemplo, puedes aplicar un token de sesión a todas las páginas y, en función de la puntuación del token de sesión, puedes redirigir las solicitudes sospechosas a la página de prueba reCAPTCHA. También puedes usar un token de acción para acciones de alto perfil, como la tramitación de la compra. Para obtener más información, consulta los ejemplos.

En la siguiente tabla se muestra una breve comparación de las funciones de reCAPTCHA disponibles para Google Cloud Armor:

Categoría de comparación Tokens de acción de reCAPTCHA Tokens de sesión de reCAPTCHA Página de prueba reCAPTCHA reCAPTCHA express
Caso práctico Se usa para proteger las acciones de los usuarios, como iniciar sesión o publicar comentarios. Se usa para proteger toda la sesión del usuario en el dominio del sitio. Úsalo cuando sospeches que hay actividad de spam dirigida a tu sitio y necesites filtrar los bots.

Este método interrumpe la actividad de un usuario porque tiene que verificar una prueba CAPTCHA.

Usa reCAPTCHA Express cuando tu entorno no admita la integración de JavaScript de reCAPTCHA o de los SDKs para móviles.
Plataformas compatibles Sitios web y aplicaciones móviles Sitios web Sitios web Todas las solicitudes HTTP.

Incluidas las APIs, los sitios web, las aplicaciones móviles y los dispositivos IoT, como televisiones y videoconsolas

Esfuerzo de integración del cliente Mediano

Integración manual del lado del cliente.

Mediano

Instala el JavaScript de reCAPTCHA manualmente o mediante inyección en el WAF.

Baja

Interstitial activado por políticas de seguridad.

Baja

No se requiere integración del cliente.

Precisión de detección Más alta

Hay disponibles señales específicas de cliente, servidor y acción.

Alta

Hay disponibles señales específicas del cliente y del servidor.

Mediano

Hay disponibles señales específicas del cliente y del servidor. Las señales del cliente solo están disponibles en una página intersticial.

Baja

Solo están disponibles las señales del lado del servidor.

Versión de reCAPTCHA admitida Claves de reCAPTCHA basadas en puntuación y de casilla Claves basadas en la puntuación de reCAPTCHA Claves basadas en pruebas de reCAPTCHA insertadas en una página intersticial Claves express de reCAPTCHA

Tokens de acción de reCAPTCHA

Puedes usar tokens de acción de reCAPTCHA para proteger interacciones importantes de los usuarios, como el proceso de compra en páginas web y aplicaciones móviles.

El flujo de trabajo de los 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 móvil envía señales que se recogen en el navegador a reCAPTCHA para que las analice.
  2. reCAPTCHA envía un token de acción a la página web o a la aplicación móvil.
  3. Adjunta este token de acción al encabezado de la solicitud que quieras proteger.
  4. Cuando el usuario final solicita acceso con el token de acción, Google Cloud Armor decodifica y valida los atributos del token de acción en lugar de tu aplicación backend.
  5. Google Cloud Armor aplica acciones en función de las reglas de política de seguridad que hayas configurado.

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

En el siguiente diagrama de secuencia se muestra el flujo de trabajo de los tokens de acción de reCAPTCHA para aplicaciones móviles:

Tokens de sesión de reCAPTCHA

Puedes usar tokens de sesión de reCAPTCHA cuando quieras proteger toda la sesión de usuario en el dominio del sitio. Un token de sesión te permite reutilizar una evaluación de reCAPTCHA durante un periodo determinado, de modo que no se necesiten más evaluaciones para un usuario concreto, lo que reduce la fricción del usuario y el número total de llamadas a reCAPTCHA necesarias.

Para que reCAPTCHA pueda aprender 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 los tokens de sesión de reCAPTCHA consta de los siguientes pasos:

  1. El navegador carga el JavaScript de reCAPTCHA desde reCAPTCHA.
  2. El JavaScript de reCAPTCHA define 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 actualiza la cookie cada 30 minutos mientras el JavaScript de reCAPTCHA siga activo.
  4. Cuando el usuario solicita acceso con la cookie, Google Cloud Armor valida esta cookie y aplica acciones basadas en las reglas de la política de seguridad.

En el siguiente diagrama de secuencia se muestra el flujo de trabajo de los tokens de sesión de reCAPTCHA:

Página de prueba reCAPTCHA

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

Esta aplicación de una redirección y una posible prueba CAPTCHA interrumpe la actividad del usuario. Te recomendamos que la uses para filtrar los bots cuando sospeches que hay actividad de spam dirigida a tu sitio.

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

  1. En la capa de Google Cloud Armor, la solicitud del usuario se redirige a la página de desafío de reCAPTCHA.
  2. reCAPTCHA responde con una página HTML insertada con el JavaScript de reCAPTCHA.
  3. Cuando se renderiza la página del desafío, reCAPTCHA evalúa la interacción del usuario. Si es necesario, reCAPTCHA muestra una prueba CAPTCHA al usuario.
  4. En función del resultado de la evaluación, reCAPTCHA hace lo siguiente:

    1. Si la interacción del usuario supera 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 caduque. De forma predeterminada, la cookie de exención caduca al cabo de tres horas.
    2. Si la interacción del usuario no supera 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 la página web mediante una llamada GET o HEAD. Si el usuario accede a la página web mediante una llamada POST o PUT, deberá hacer clic en el enlace de recarga de la página.

  6. Google Cloud Armor exime de la redirección a las solicitudes que tienen una cookie de exención válida y les concede acceso a tu sitio.

En el siguiente diagrama de secuencia se muestra el flujo de trabajo de la página de prueba reCAPTCHA:

Siguientes pasos