Implementación de Google reCAPTCHA en ASP.NET
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.
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.
Paso 3: Modificación del Controller que contiene el formulario
Paso 4: Integración de reCAPTCHA en la Vista
Puedes consultar la documentación oficial para la integración front-end.
Implementando estos pasos, tus formularios estarán más seguros frente a accesos no deseados.
- Autor/a: Amanda Crespo Luis
- Máster: Desarrollo Web Full Stack + MultiCloud
- Centro: Tajamar Tech
- Año académico: 2024-2025
- Código / recursos utilizados:https://github.com/amandacrespo/CharlaReCaptcha.git
- Linkedin: https://www.linkedin.com/in/amanda-crespo-luis-956856253/








