En este documento, encontrarás ayuda para comprender las funciones de reCAPTCHA para Google Cloud Armor y determinar cuáles coinciden mejor con tu caso de uso.
reCAPTCHA ofrece las siguientes funciones que puedes usar para integrar con Google Cloud Armor:
Descripción general de las funciones
reCAPTCHA para las integraciones de Google Cloud Armor admite tokens de acción, tokens de sesión y páginas de desafío.
Puedes usar una o más funciones de reCAPTCHA para Google Cloud Armor 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, puedes 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 el proceso de confirmació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 disponibles de reCAPTCHA para Google Cloud Armor:
| Categoría de comparación | Tokens de acción de reCAPTCHA | Tokens de sesión de reCAPTCHA | Página de desafío de reCAPTCHA |
|---|---|---|---|
| Caso de uso | Se usa para proteger las acciones del usuario, como el acceso o las publicaciones de comentarios. | Se usa para proteger toda la sesión del usuario en el dominio del sitio. | Se usa cuando sospechas que hay actividad de spam dirigida a tu sitio y necesitas filtrar los bots.
Este método interrumpe la actividad de un usuario porque este debe verificar un desafío de CAPTCHA. |
| Plataformas compatibles | Sitios web y aplicaciones para dispositivos móviles | Sitios web | Sitios web |
| Esfuerzo de integración del cliente | Media
Integración manual del cliente. |
Media
Instala JavaScript de reCAPTCHA de forma manual o mediante la inyección en el WAF. |
Baja
Intersticial activado por políticas de seguridad. |
| Precisión de detección | Highest
Hay indicadores específicos del cliente, el servidor y la acción disponibles. |
Alta
Hay indicadores específicos del cliente y el servidor disponibles. |
Media
Hay indicadores específicos del cliente y el servidor disponibles. Los indicadores del cliente solo están disponibles en una página intersticial. |
| Versión de reCAPTCHA compatible | Claves de reCAPTCHA basadas en puntuación y casillas de verificación | Claves de reCAPTCHA basadas en puntuación | Claves de reCAPTCHA basadas en desafíos incorporadas en una página intersticial |
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 confirmación de la compra en páginas web y en aplicaciones para dispositivos móviles.
El flujo de trabajo de los tokens de acción de reCAPTCHA consta de los siguientes pasos:
- Cuando un usuario final activa una acción protegida por reCAPTCHA, la página web o la aplicación para dispositivos móviles envía indicadores que se recopilan en el navegador en reCAPTCHA para su análisis.
- reCAPTCHA envía un token de acción a la página web o a la aplicación para dispositivos móviles.
- Adjunta este token de acción al encabezado de la solicitud que deseas proteger.
- 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 de backend.
- Google Cloud Armor aplica acciones en función de las reglas de política de seguridad configuradas.
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 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 reutilizar un token válido en las solicitudes durante un período especificado, de modo que no necesites llamar a execute() para cada acción del usuario, lo que reduce la fricción del usuario y la cantidad de llamadas a execute().
Para permitir que reCAPTCHA obtenga información 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:
- El navegador carga el JavaScript de reCAPTCHA desde reCAPTCHA.
- El JavaScript de reCAPTCHA establece un token de sesión como una cookie en el navegador del usuario final después de llamar a
execute(). - El navegador del usuario final almacena la cookie y el JavaScript de reCAPTCHA la actualiza cada 30 minutos mientras el JavaScript de reCAPTCHA permanezca activo.
- Cuando el usuario solicita acceso con la cookie, Google Cloud Armor valida esta cookie y aplica acciones en función de las reglas de 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 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 de un 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 (usuario) visita tu sitio por primera vez, se producen los siguientes eventos:
- En la capa de Google Cloud Armor, la solicitud del usuario se redirecciona a la página de desafío de reCAPTCHA.
- reCAPTCHA responde con una página HTML incorporada con el JavaScript de reCAPTCHA.
- Cuando se renderiza la página de desafío, reCAPTCHA evalúa la interacción del usuario. Si es necesario, reCAPTCHA le muestra un desafío de CAPTCHA al usuario.
Según el resultado de la evaluación, reCAPTCHA hace lo siguiente:
- 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 vence. De forma predeterminada, la cookie de exención vence después de tres horas.
- Si la interacción del usuario no pasa la evaluación, reCAPTCHA no emite una cookie de exención.
reCAPTCHA vuelve a cargar la página web con la cookie de exención si el usuario accede a la página web 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 de recarga de la página.
Google Cloud Armor exime de redireccionamiento nuevamente a las solicitudes que tienen una cookie de exención válida y otorga acceso a tu sitio.
En el siguiente diagrama de secuencia, se muestra el flujo de trabajo de la página de desafío de reCAPTCHA:
¿Qué sigue?
- Obtén información sobre los atributos de token para Cloud Armor.
- Integra reCAPTCHA con Cloud Armor en sitios web.
- Integra reCAPTCHA con Cloud Armor en aplicaciones para dispositivos móviles.