Skip to content

[F3-07] Límites de peticiones (login, creación de proyectos y claves) #41

Open

Description

@JCCG-code

Fase: F3 · Tamaño: S · Depende de: #34 (F3-01), #23 (F1-03)

Objetivo

Proteger el login y las operaciones que gastan recursos frente a abuso, con registro público (D-02 en #1).

Alcance

  • express-rate-limit con almacén Redis (rate-limit-redis).
  • /api/auth/*: 10 peticiones/min por IP.
  • POST /api/v1/projects y regeneraciones: 20/hora por usuario.
  • POST /api/v1/credentials: 10/hora por usuario.
  • Respuesta 429 en problem+json con cabecera Retry-After.

Criterios de aceptación

  • Test: la 11.ª petición de login en un minuto desde la misma IP → 429 con Retry-After.
  • Test: el límite se comparte entre dos instancias de la app (mismo Redis).
  • Test: el límite por usuario no afecta a otro usuario.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions