Si alguna vez has tenido que marcar la casilla «No soy un robot» o elegir imágenes con semáforos, ya te has encontrado con Google reCAPTCHA. Pero, ¿para qué sirve realmente?

Internet está lleno de formularios: para registrarte en un sitio, dejar un comentario o rellenar una encuesta. El problema es que también son un blanco fácil para bots maliciosos, que los usan para enviar spam, lanzar ataques automatizados o incluso intentar robar información.

Aquí es donde entra en juego Google reCAPTCHA. Es una herramienta gratuita que ayuda a los sitios web a detectar si quien intenta enviar un formulario es un humano o un bot. Así, protege las páginas de accesos no deseados sin afectar la experiencia de los usuarios reales.

¿Cómo funciona reCAPTCHA?

Analiza el comportamiento del usuario en la página y le asigna un nivel de confianza, evaluando aspectos como los movimientos del ratón, la forma en que interactúa con la web y su dirección IP.

Dependiendo de la versión que uses, reCAPTCHA puede pedirle al usuario que confirme que es humano o trabajar en segundo plano sin que se dé cuenta.

Las versiones más utilizadas son:

  • v2: Pide a los usuarios que realicen una acción, como marcar una casilla «No soy un robot» o seleccionar imágenes en un desafío visual.
  • v3: Funciona sin interrupciones, analizando la actividad del usuario y asignando un puntaje de 0 a 1 (cuanto más alto, más probable que sea humano). Los desarrolladores pueden definir un umbral de confianza para determinar cuándo bloquear o permitir solicitudes en función del puntaje.

En este post, aprenderemos cómo integrar reCAPTCHA v3 en ASP.NET para mejorar la seguridad sin afectar la experiencia del usuario.

Paso 1: Registrar el sitio en Google recaptcha.

  • Accede a Google reCAPTCHA.
  • Registra tu sitio web eligiendo la opción reCAPTCHA v3.
  • Si estás desarrollando en localhost, agrega «localhost» como dominio.
  • Obtén las claves Site Key y Secret Key, que se usarán en el front-end y back-end, respectivamente.
paso1.1
paso1.2

Paso 2: Configuración en ASP.NET MVC

  • Agregar las claves en appsettings.json.
  • Configurar el servicio en Program.cs.
  • Crear la clase de configuración reCAPTCHASettings.cs.
  • Crear e implementar el servicio reCAPTCHAService.cs.

Puedes consultar la documentación oficial para la integración back-end.

paso2.1
appsettings.json
paso2.2
Program.cs
paso2.3
reCAPTCHASettings.cs
paso2.4
reCAPTCHAService.cs
paso2.4.2
reCAPTCHAService.cs

Paso 3: Modificación del Controller que contiene el formulario

paso3

Paso 4: Integración de reCAPTCHA en la Vista

Puedes consultar la documentación oficial para la integración front-end.

paso4

Implementando estos pasos, tus formularios estarán más seguros frente a accesos no deseados.


Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.