Lección 11 de 12 · Lectura y práctica
Rate limiting: proteger tu API
Rate limiting Un limite simple te salva de abuso y picos. Es parte del producto, no solo seguridad. Conceptos clave limitar por IP o user ventanas de tiempo responder 429 Ejemplo Regla simple: 60 requests/min por IP para.
Del concepto a la práctica
Taller de esta lección
El límite debe expresar una política concreta: quién se limita, durante cuánto tiempo y qué respuesta recibe al excederlo. Un endpoint público de lectura puede tolerar más solicitudes que uno privado que cambia datos; la cifra es una regla del laboratorio, no una promesa universal.
Ejemplo resuelto
Para una ventana de 60 segundos y límite 3 por IP, las solicitudes 1, 2 y 3 pasan; la 4 recibe 429. La respuesta puede ser { "ok": false, "error": { "code": "RATE_LIMITED" } } y un encabezado que indique cuándo reintentar, si tu implementación lo soporta.
Prueba sin concurrencia y en ventanas nuevas para separar /search y/admin. La autorización de admin sigue siendo obligatoria, aunque aún queden solicitudes permitidas. Los contadores RAM son por proceso y se reinician; varias instancias requieren un almacenamiento compartido con incremento atómico. Detrás de proxy configura trust proxy según la topología confiable y evita aceptar X-Forwarded-For arbitrario; limitación por IP puede agrupar usuarios legítimos tras NAT.
Pruébalo
Usa un almacenamiento local de contadores para el laboratorio.
Identifica la IP o usuario según la ruta.
Reinicia la ventana y envía cuatro solicitudes controladas.
Error frecuente: contar todas las rutas con el mismo límite sin distinguir coste. Corrige definiendo políticas por grupo y documentándolas.
Ejercicio: configura 3 solicitudes por minuto para /search y 2 para /admin.
Comprueba tu resultado
la cuarta búsqueda y la tercera petición administrativa devuelven 429, mientras las anteriores conservan su estado normal.

Mapa de prácticaEl control de acceso, las actualizaciones y las copias de seguridad cubren riesgos distintos. Una alerta necesita un procedimiento de respuesta para contener y recuperar el servicio. Varias capas reducen la exposición, pero ninguna garantiza seguridad absoluta.
Ver la infografía en tamaño completo ↗Rate limiting
Un limite simple te salva de abuso y picos. Es parte del producto, no solo seguridad.
Conceptos clave
- limitar por IP o user
- ventanas de tiempo
- responder 429
Ejemplo
Regla simple: 60 requests/min por IP para endpoints publicos.
Ejercicio
- Define limites para endpoints publicos vs privados.
- Devuelve 429 con mensaje claro.
Checklist de mastery
- Tengo limites razonables por endpoint.
- Manejo 429 en cliente.
Sigue con Node.js y APIs con Express
Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.
Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.