🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónAPIs de socios y cuotas
5 tareas · 36 min · Principiante
Para que una tienda en línea muestre dónde va su pedido, o para que una bodega consulte su inventario, las empresas de transporte publican una API: una puerta de entrada para que los programas de sus socios pidan datos sin pasar por una persona. Esa puerta se protege con una llave por cliente, un alcance (qué puede hacer cada llave) y una cuota (cuántas solicitudes por minuto). En Mensajería Ceiba lees el registro de la API y el uso por minuto, y buscas tres cosas que fallan con frecuencia: un cliente que ve datos de otro, una cuota que existe en el papel pero no se aplica y una llave que nadie usa y nadie retiró. Todo es lectura de un registro de ejemplo.
Objetivo de la sala
Para que una tienda en línea muestre dónde va su pedido, o para que una bodega consulte su inventario, las empresas de transporte publican una API: una puerta de entrada para que los programas de sus socios pidan datos sin pasar por una persona. Esa puerta se protege con una llave por cliente, un alcance (qué puede hacer cada llave) y una cuota (cuántas solicitudes por minuto). En Mensajería Ceiba lees el registro de la API y el uso por minuto, y buscas tres cosas que fallan con frecuencia: un cliente que ve datos de otro, una cuota que existe en el papel pero no se aplica y una llave que nadie usa y nadie retiró. Todo es lectura de un registro de ejemplo.Una API de socios identifica a cada cliente con una llave. Eso resuelve una pregunta (quién llama), pero no las otras dos: qué puede hacer y cuánto puede pedir. El alcance limita las operaciones (solo lectura, o lectura y escritura) y la cuota limita el ritmo. La cuota protege tres cosas a la vez: que un cliente con un error de programación no tumbe el servicio para los demás, que alguien no extraiga todo el catálogo de envíos a base de repetir llamadas y que el costo de la infraestructura no se dispare.
El marco OWASP API Security Top 10, en su edición de 2023, recoge el problema de la cuota como «Unrestricted Resource Consumption» (API4:2023) y el de ver datos ajenos como «Broken Object Level Authorization» (API1:2023). Son nombres para dos preguntas que se hacen al leer un registro: ¿se limita el consumo? y ¿se comprueba que el objeto pedido pertenece a quien lo pide?
Responde para continuar
¿Qué riesgo cubre principalmente la cuota de solicitudes por minuto de una llave?
Ver pista de ayuda
La cuota habla de ritmo y volumen, no de quién es la llave ni de qué operaciones permite.
El registro de la API tiene dos columnas que hay que mirar juntas: «cliente» (quién llamó) y «dueno_del_objeto» (a quién pertenece el envío que se consultó). Si son distintas y la API respondió 200, la API entregó datos de un cliente a otro. Un 403 en la misma situación es lo contrario: la API hizo bien su trabajo y rechazó la petición, y eso es lo que se espera.
Responde para continuar
¿Qué cliente consultó envíos de otro cliente y recibió respuesta exitosa? Escribe su identificador.
Ver pista de ayuda
Ejecuta `SELECT cliente, count(*) AS accesos FROM registro_api WHERE cliente <> dueno_del_objeto AND codigo = '200' GROUP BY cliente`.
Una cuota solo existe si la pasarela bloquea lo que la excede. La tabla uso_por_minuto trae, para cada cliente y cada minuto, la cuota, las solicitudes recibidas y las bloqueadas. Si las solicitudes superan la cuota y el número de bloqueadas es cero, la cuota no se aplicó. Fíjate también en el caso contrario: un cliente que superó su cuota y tiene bloqueadas es un control funcionando, no un hallazgo.
Responde para continuar
¿Qué cliente superó su cuota por minuto sin que se bloqueara ninguna solicitud? Escribe su identificador.
Ver pista de ayuda
Ejecuta `SELECT cliente, minuto, solicitudes, cuota_por_minuto, bloqueadas FROM uso_por_minuto WHERE solicitudes > cuota_por_minuto AND bloqueadas = 0`.
Medir el exceso sirve para decidir la urgencia: unas pocas solicitudes por encima de la cuota es ruido; varias veces la cuota sin ningún bloqueo es una señal de que el límite no existe o de que alguien está extrayendo datos. En esa misma consulta ya tienes las dos cifras que necesitas. Resta la cuota de las solicitudes de ese minuto.
Responde para continuar
¿Cuántas solicitudes por encima de su cuota hizo ese cliente en ese minuto? Escribe solo el número.
Ver pista de ayuda
Usa la misma consulta de la tarea anterior y calcula solicitudes menos cuota_por_minuto.
Cada llave activa es una puerta. Una que lleva semanas sin usarse suele ser de una integración que se abandonó, de un socio con el que ya no se trabaja o de una prueba que se quedó, y nadie la vigila porque no genera tráfico: si alguien la roba, nadie nota la diferencia. La práctica es sencilla: fijar un plazo sin uso (aquí, treinta días a la fecha del informe, el 7 de octubre de 2026), preguntar al socio si la necesita y revocarla si no responde.
Responde para continuar
¿Qué cliente tiene una llave que lleva más de treinta días sin usarse? Escribe su identificador.
Ver pista de ayuda
Ejecuta `SELECT cliente, ultimo_uso FROM clientes_api WHERE ultimo_uso < '2026-09-07'`.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.