En este documento, se proporciona una descripción general de las políticas de firewall de reCAPTCHA.
Una política de firewall de reCAPTCHA es un conjunto de reglas que coinciden en función de los atributos de condición para proteger tu sitio contra el spam y el abuso. Cada regla se evalúa para el tráfico entrante. Las reglas se evalúan en el mismo orden en que se agregan en la política.
Componentes de la política de firewall de reCAPTCHA
Una regla de política de firewall de reCAPTCHA consta de los siguientes componentes:
path
: Es una ruta de URL a la que se aplica la regla de política de firewall. Por ejemplo,/login
condition
: Es una condición de la política. Una condición de política es una expresión de CEL (Common Expression Language) que debe resolverse en un valor booleano. Por ejemplo,recaptcha.score >= 0.5
.action
: Es una acción que tu proveedor de servicios de WAF debe ejecutar cuando se cumple la condición de la política. Para obtener más información, consulta las acciones relacionadas con las políticas.
Cuando una solicitud entrante coincide con una condición de la política de la ruta especificada, tu proveedor de servicios de WAF permite, bloquea o redirecciona la solicitud, según la acción especificada. La regla predeterminada es permitir el acceso.
Una política de firewall de reCAPTCHA de muestra
La siguiente política de firewall de reCAPTCHA de muestra contiene una regla que se aplica
a la acción login
. Bloquea el acceso si la puntuación es inferior a 0.5.
policy {
path: login.php
condition: recaptcha.score < 0.5
action: block
}
Atributos de condición de la política de firewall de reCAPTCHA
En la siguiente tabla, se enumeran los atributos del token de reCAPTCHA que puedes usar para definir condiciones en las políticas de firewall de reCAPTCHA.
Nombre del atributo | Tipo de datos | Descripción |
---|---|---|
recaptcha.token.valid |
boolean | Si el token recibido es válido. Un token es válido si no tiene el formato incorrecto o venció, incluso si la puntuación es baja. |
recaptcha.token.action |
string | El nombre de la acción proporcionado en la generación del token
Se propaga solo para los tokens de acción. Este es el parámetro action que se pasa a grecaptcha.enterprise.execute() cuando se crea el token.
Para obtener más información, consulta Nombres de acciones.
|
recaptcha.score |
float | La puntuación de un token de reCAPTCHA. Una puntuación válida varía de 0.0 a 1.0. La puntuación 1.0 indica que la interacción representa un riesgo bajo y es probable que sea legítima, mientras que 0.0 indica que la interacción presenta un riesgo alto y puede ser fraudulenta. Para obtener más información, consulta Cómo interpretar las puntuaciones. |
recaptcha.assessment_type |
integer | El tipo de evaluación que se realizó. assessment_type
se configura según la clave de reCAPTCHA para WAF que se pasa con
la solicitud.
Para comparar el valor de
AssessmentType.ACTION .
|
http.ip |
string | La dirección IP de la solicitud entrante. |
http.path |
string | Es la ruta del URI de la solicitud. |
http.domain |
string | Es el dominio del URI solicitado. |
Acciones de la política de firewall de reCAPTCHA
En la siguiente tabla, se enumeran las diversas acciones de políticas que puedes especificar en las reglas de políticas de firewall de reCAPTCHA:
Acción de la política | Descripción | Resultado de la acción |
---|---|---|
allow |
Permite el acceso a la página solicitada. | La solicitud de usuario entrante no se interrumpe en tu backend. |
block |
Rechaza el acceso a la página solicitada. | Se muestra un error de HTTP 403 (prohibido) al usuario. |
redirect |
Redirecciona la solicitud del usuario entrante a la página de desafío de reCAPTCHA. | La página de desafío de reCAPTCHA evalúa la solicitud del usuario y adjunta una cookie según la evaluación. Más adelante, la solicitud del usuario se vuelve a redireccionar a la página original. |
substitute |
Muestra una página diferente a la solicitada para una solicitud de usuario fraudulenta. | La ruta solicitada se sustituye por una ruta diferente cuando se envía la solicitud a tu backend. El usuario continúa viendo la URL original. |
set_header |
Establece un encabezado personalizado y permite que la solicitud del usuario entrante continúe al backend. Luego, el backend puede activar una protección personalizada. | Se adjunta un encabezado a la solicitud del usuario. Tu backend usa este encabezado para activar una protección o un análisis personalizados. |