En este documento, se proporciona una descripción general de las políticas de firewall de reCAPTCHA.
Las políticas de firewall de reCAPTCHA son una lista de reglas configurables que coinciden con los atributos de condición para proteger tu sitio del spam y el abuso.
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
La ruta de acceso puede ser un patrón glob, como/*.html
.condition
: Es una condición de la política. Una condición de política es una expresión CEL (Common Expression Language) que debe resolverse en un valor booleano. Por ejemplo,recaptcha.score >= 0.5
.action
: Es una acción que debe ejecutar tu complemento del WAF cuando se cumpla la condición de la política. Para obtener más información, consulta acciones de políticas.
Cuando una solicitud entrante coincide con la ruta y la condición de una política, el complemento de reCAPTCHA para tu proveedor de servicios de WAF aplica una acción. Las acciones disponibles incluyen permitir, bloquear o redireccionar la solicitud a una página de desafío intersticial.
Las políticas se evalúan en orden y solo se activa una. Si no coincide ninguna política, la regla predeterminada es permitir el acceso.
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 tus políticas de firewall de reCAPTCHA.
Nombre del atributo | Tipo de datos | Descripción |
---|---|---|
recaptcha.token.valid |
booleano | Indica si el token recibido es válido. Un token es válido si no está mal formado ni venció, incluso si la puntuación es baja. |
recaptcha.token.action |
string | Es el nombre de la acción proporcionado durante la generación del token.
Solo se completa 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 de 1.0 indica que la interacción representa un riesgo bajo y es probable que sea legítima, mientras que la de 0.0 indica que la interacción representa un riesgo alto y podría ser fraudulenta. Para obtener más información, consulta Cómo interpretar las puntuaciones. |
recaptcha.assessment_type |
integer | Es 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 | Es 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 distintas acciones de política que puedes especificar en las reglas de tu política de firewall de reCAPTCHA:
Acción de política | Descripción | Resultado de la acción |
---|---|---|
allow |
Permite el acceso a la página solicitada. | La solicitud de usuario entrante llega sin interrupciones a tu backend. |
block |
Deniega el acceso a la página solicitada. | Se devuelve al usuario un error HTTP 403 (prohibido). |
redirect |
Redirecciona la solicitud entrante del usuario 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 tarde, la solicitud del usuario se redirecciona nuevamente a la página original. |
substitute |
Publica una página diferente a la solicitada en una solicitud fraudulenta del usuario. | La ruta de acceso solicitada se sustituye por otra ruta de acceso cuando se envía la solicitud a tu backend. El usuario sigue viendo la URL original. |
set_header |
Establece un encabezado personalizado y permite que la solicitud entrante del usuario continúe hacia el 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. |