En este documento, se muestran ejemplos de políticas de firewall de reCAPTCHA que puedes crear en función de la implementación de las funciones del WAF de reCAPTCHA.
Ejemplo 1: Una política de firewall de reCAPTCHA con un token de acción
Puedes agregar un token de acción de reCAPTCHA para proteger una acción del usuario, como el acceso. Para asegurarte de que se emita la cookie de reCAPTCHA cuando el usuario inicie la acción de acceso, integra la secuencia de comandos de token de acción de reCAPTCHA en la página principal.
Crea una política de firewall de reCAPTCHA con las siguientes reglas:
- Es la ruta de acceso en la que se debe aplicar la regla. En este caso:
login.php
. - Si el atributo de nombre de acción del token de acción no coincide con la acción del usuario que está protegida o si la puntuación es menor o igual a 0.1, bloquea el acceso.
gcloud recaptcha firewall-policies create \
--description="example1 policy" \
--path="/login.php" \
--condition="recaptcha.token.action != "login" || recaptcha.score <= 0.1" \
--actions="block"
En la siguiente ilustración, se muestra un flujo de trabajo que usa la función de token de acción de reCAPTCHA y la política de firewall de reCAPTCHA correspondiente:
Ejemplo 2: Una política de firewall de reCAPTCHA con un token de sesión
Puedes agregar un token de sesión de reCAPTCHA en las páginas a las que un usuario podría acceder para que la cookie se actualice periódicamente, por ejemplo, una página de confirmación de compra. Integra la secuencia de comandos de token de sesión de reCAPTCHA para que la cookie de reCAPTCHA se emita y actualice en el backend de la aplicación antes de que un usuario ingrese a la página de confirmación de la compra. En la página de confirmación de la compra, integra la secuencia de comandos de token de sesión de reCAPTCHA para que se emita y se actualice la cookie de reCAPTCHA en el backend de la aplicación y se evite que venza.
Crea una política de firewall de reCAPTCHA con la siguiente regla:
- Es la ruta de acceso en la que se debe aplicar la regla. En este caso:
checkout.html
. - Si la puntuación es menor o igual a 0.1, bloquea el acceso.
gcloud recaptcha firewall-policies create \
--description="example2 policy" \
--path="/checkout.html" \
--condition="recaptcha.score <=0.1" \
--actions="block"
En la siguiente ilustración, se muestra un flujo de trabajo que usa la función de token de sesión de reCAPTCHA y la política de firewall de reCAPTCHA correspondiente:
Ejemplo 3: Una política de firewall de reCAPTCHA con página de desafío
Puedes agregar la función de página de desafío de reCAPTCHA cuando quieras que el usuario se redireccione a una página intersticial en la que se determine si la solicitud del usuario es potencialmente fraudulenta o legítima.
Para las páginas que deseas proteger, crea reglas de políticas de firewall de reCAPTCHA para redireccionar al usuario a la página de desafío:
- En el caso de la página protegida, si el token no es válido, redirecciona al usuario
a la página de desafío. En este caso:
index.html
. Si la puntuación es menor o igual a 0.1, redirecciona al usuario a la página de error.
gcloud recaptcha firewall-policies create \ --description="example3-1 policy" \ --path="/index.html" --condition="!recaptcha.token.valid" --actions="redirect"
gcloud recaptcha firewall-policies create \ --description="example3-2 policy" \ --path="/index.html" --condition="recaptcha.score <= 0.1" --actions="substitute { path: /bot_error }"
En la siguiente ilustración, se muestra un flujo de trabajo que usa la función de página de desafío de reCAPTCHA y las políticas de firewall de reCAPTCHA correspondientes:
Ejemplo 4: Una política de firewall de reCAPTCHA con un token de acción y una página de desafío
Puedes usar más de una función del WAF de reCAPTCHA cuando quieras usar distintos niveles de protección en las páginas web. Por ejemplo, puedes usar la función de token de acción o de token de sesión en una página para evaluar el tráfico entrante con las puntuaciones de reCAPTCHA y usar la función de página de desafío en una página en la que deseas asegurarte de que el usuario no sea un bot.
Puedes agregar un token de acción de reCAPTCHA para proteger una acción del usuario, como el acceso. Para asegurarte de que se emita la cookie de reCAPTCHA cuando el usuario inicie la acción de acceso, integra la secuencia de comandos de token de acción de reCAPTCHA en la página antes de la acción de acceso protegida. Por ejemplo, la página principal. En la página de descarga, usa la regla de política de firewall de reCAPTCHA para redireccionar al usuario a la página de desafío.
Crea una política de firewall de reCAPTCHA con las siguientes reglas:
- Es la ruta de acceso en la que se debe aplicar la regla. En este caso:
login.php
. - Si el atributo de nombre de acción del token de acción no coincide con la acción del usuario que está protegida, o si el tipo de evaluación no es
ACTION
, o si la puntuación es menor o igual a 0.1, bloquea el acceso. - Para redireccionar al usuario a la página de desafío cuando quiera descargar contenido, agrega una regla de política de firewall para redireccionarlo.
- Si la puntuación es menor o igual a 0.1 o si el tipo de evaluación no es
CHALLENGEPAGE
, redirecciona al usuario a la página de error.
gcloud recaptcha firewall-policies create --description="example4-1 policy"
--path="/login.php" --condition="recaptcha.token.action != "login" || recaptcha.assessment_type != AssessmentType.ACTION || recaptcha.score <= 0.1" --actions="block"
gcloud recaptcha firewall-policies create --description="example4-2 policy"
--path="/content/example.pdf" --condition="recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="redirect"
gcloud recaptcha firewall-policies create --description="example4-3 policy"
--path="/content/example.pdf" --condition="recaptcha.score <= 0.1 || recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="substitute { path: /bot_error }"
En la siguiente ilustración, se muestra un flujo de trabajo que usa funciones de página de desafío de reCAPTCHA y token de acción de reCAPTCHA, y las políticas de firewall de reCAPTCHA correspondientes:
Ejemplo 5: Una política de firewall de reCAPTCHA con protección exprés de WAF y página de desafío
Puedes agregar la función de protección exprés de reCAPTCHA WAF cuando quieras evaluar la interacción del usuario sin inconvenientes y, luego, redireccionar a los usuarios a la página de desafío si la puntuación es baja. Por ejemplo, para evitar el raspado de datos, debes bloquear el tráfico a una página de catálogo.
Crea una política de firewall de reCAPTCHA con la siguiente regla:
- Es la ruta de acceso en la que se debe aplicar la regla.
- Si la puntuación es menor o igual a 0.3, redirecciona al usuario a la página del desafío.
En el siguiente ejemplo, se crea una política de firewall de reCAPTCHA para redireccionar el tráfico que se segmenta para /catalog1/itemlist.html
cuando la puntuación es inferior a 0.3.
gcloud recaptcha firewall-policies create \
--description="example5 policy" \
--path="/catalog1/itemlist.html" \
--condition="recaptcha.score <= 3" \
--actions="redirect"