Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

233
Vistas
¿Es seguro exportar la cookie del usuario desde el lado del servidor y usarla como una alternativa de "clave API"?

Primero un poco de contexto: aquí hay un escenario típico de autenticación:

  1. Un servidor express.js con soporte para cookies firmadas
  2. El usuario inicia sesión desde el frontend y el backend establece la cookie en la respuesta
  3. Esta cookie se establecerá en el navegador del usuario.
  4. A partir de este momento, cada vez que el usuario realice una solicitud desde el navegador, la cookie se adjuntará a req.headers.cookie

Ahora que hemos establecido el contexto, esto es lo que quiero hacer: quiero crear una función de API para el servidor, pero en lugar de agregar lógica adicional de generación y administración de claves de API, me gustaría usar la cookie existente.

Básicamente quiero hacer esto:

  1. El usuario va a una página de "clave API", que enviará una solicitud al servidor, y el servidor podrá obtener la cookie de esta misma solicitud, a través del atributo req.headers.cookie .
  2. Luego, el servidor devuelve la req.headers.cookie al usuario como respuesta
  3. El usuario toma esa cadena de cookies de la página de la clave API (a la que técnicamente también se puede acceder dentro de la pestaña de "aplicación" de su navegador, pero solo lo estoy facilitando para que el usuario no necesite abrir la consola del navegador) y lo usa como un Alternativa "clave API".

Por ejemplo, aquí hay un controlador de ruta de muestra para la página de clave de API:

 app.get("/api_keys", authenticate, (req, res) => { res.render("api_keys", { cookie: req.headers.cookie }) })

Esto mostrará la cadena de cookies en la página /api_keys .

Luego, el usuario puede copiar y pegar la cadena de cookies completa en el siguiente código:

 fetch(API_URL, { headers: { cookie: <PASTE_COOKIE_HERE> } }).then((response) => { console.log(response) })

y debería funcionar. Y lo hace (lo acabo de comprobar).

Mi pregunta es: ¿Está bien proteger las API de esta manera?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda