Limitación de Velocidad de API para Verificación de Identidad (ES-1)
Aprenda a implementar una limitación de velocidad de API efectiva para su integración de verificación de identidad, asegurando estabilidad, seguridad y una experiencia positiva para los desarrolladores.

Idea Clave 1La limitación de velocidad de la API es crucial para proteger su infraestructura de verificación de identidad contra abusos y garantizar un uso justo para todos los desarrolladores.
Idea Clave 2Una limitación de velocidad efectiva requiere una planificación cuidadosa, considerando factores como los patrones de uso de la API, los niveles de usuario y el costo de procesamiento de las solicitudes.
Idea Clave 3Didit emplea un sistema de limitación de velocidad robusto que utiliza límites globales y por desarrollador, diseñado para equilibrar la seguridad, el rendimiento y la flexibilidad del desarrollador.
Idea Clave 4El manejo adecuado de errores y las respuestas informativas son esenciales cuando se superan los límites de velocidad, guiando a los desarrolladores para optimizar su integración.
Comprendiendo la Limitación de Velocidad de API
La limitación de velocidad de API es un aspecto crítico de cualquier API pública, especialmente aquellas que manejan datos confidenciales como la verificación de identidad. Controla el número de solicitudes que un cliente (típicamente una aplicación de un desarrollador) puede realizar a su API dentro de un período de tiempo específico. Sin la limitación de velocidad de la API, su infraestructura puede verse abrumada por solicitudes excesivas, lo que lleva a interrupciones del servicio, aumento de costos y posibles vulnerabilidades de seguridad.
En el contexto de la verificación de identidad, la limitación de velocidad es aún más vital. Los actores maliciosos podrían intentar forzar procesos de verificación, lanzar ataques de denegación de servicio o extraer datos. Una estrategia de limitación de velocidad bien diseñada mitiga estos riesgos y garantiza un servicio confiable para los desarrolladores legítimos.
¿Por qué implementar la limitación de velocidad de API?
- Prevenir abusos: Proteja contra ataques maliciosos y acceso no autorizado.
- Garantizar la estabilidad del servicio: Evitar la sobrecarga y mantener un rendimiento constante.
- Uso justo: Garantizar un acceso equitativo a la API para todos los desarrolladores.
- Control de costos: Administrar los costos de infraestructura asociados con el procesamiento de solicitudes.
- Seguridad: Mitigar el riesgo de ataques de fuerza bruta y extracción de datos.
Algoritmos comunes de limitación de velocidad
Se pueden utilizar varios algoritmos para implementar la limitación de velocidad de la API. Aquí hay algunos enfoques comunes:
Token Bucket (Cubo de Fichas)
El algoritmo del cubo de fichas conceptualmente llena un cubo con fichas a una velocidad fija. Cada solicitud de API consume una ficha. Si el cubo está vacío, la solicitud se rechaza. Esto permite ráfagas de solicitudes siempre que haya fichas disponibles.
Leaky Bucket (Cubo con Fugas)
Similar al cubo de fichas, pero las solicitudes se procesan a una velocidad constante, “escapando” del cubo. Las solicitudes que exceden la tasa de procesamiento se descartan.
Fixed Window (Ventana Fija)
Limita el número de solicitudes dentro de una ventana de tiempo fija (por ejemplo, 100 solicitudes por minuto). Restablece el contador al comienzo de cada ventana.
Sliding Window (Ventana Deslizante)
Un enfoque más sofisticado que considera una ventana de tiempo móvil. Proporciona una limitación de velocidad más precisa al promediar las solicitudes durante un período continuo, suavizando los picos de tráfico.
El enfoque de Didit para la limitación de velocidad de API
En Didit, empleamos un enfoque híbrido para la limitación de velocidad de la API, combinando límites globales, por desarrollador y por dirección IP. Esta estrategia multicapa proporciona una protección robusta al tiempo que minimiza las interrupciones para los desarrolladores legítimos.
- Límites globales: Límites generales en el número total de solicitudes a toda la API. Estos protegen nuestra infraestructura de una sobrecarga catastrófica.
- Límites por desarrollador: Límites específicos para cada clave de API. Estos se clasifican según el plan de suscripción y el historial de uso del desarrollador. Por ejemplo, un desarrollador del nivel gratuito podría tener un límite de 100 solicitudes por minuto, mientras que un desarrollador del nivel premium podría tener 1000 solicitudes por minuto.
- Límites por dirección IP: Límites basados en la dirección IP de origen. Esto mitiga el riesgo de abuso desde una sola fuente.
Utilizamos el algoritmo de ventana deslizante para mayor precisión y equidad. La API de Didit devuelve los siguientes encabezados con cada respuesta:
X-RateLimit-Limit: El número máximo de solicitudes permitidas dentro de la ventana de tiempo actual.X-RateLimit-Remaining: El número de solicitudes restantes en la ventana de tiempo actual.X-RateLimit-Reset: La marca de tiempo (en UTC) cuando se restablece el límite de velocidad.
Cuando se supera un límite de velocidad, la API devuelve un error 429 Too Many Requests con un mensaje descriptivo.
Cómo Didit ayuda
La plataforma de identidad todo en uno de Didit proporciona una solución robusta y escalable para sus necesidades de verificación de identidad, incluida la limitación de velocidad de la API incorporada. Puede concentrarse en construir su aplicación, mientras nosotros nos encargamos de la complejidad de garantizar un servicio seguro y confiable. Así es como ayudamos:
- Limitación de velocidad automatizada: No es necesario que implemente la limitación de velocidad usted mismo: está integrada.
- Escalabilidad: Nuestra infraestructura se escala automáticamente para manejar las fluctuaciones de tráfico.
- Monitoreo y alertas: Monitoreamos continuamente el uso de la API y lo alertamos sobre posibles problemas.
- Niveles flexibles: Elija un nivel de precios que se adapte a sus necesidades y presupuesto.
- Políticas transparentes: Documentación clara y límites de velocidad predecibles.
¿Listo para empezar?
¿Listo para experimentar el poder de la plataforma de verificación de identidad de Didit? Da el siguiente paso: