Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

310
Visualizações
Lista blanca de aplicaciones web para acceso API sin clave API

Estamos desarrollando una aplicación web (SPA) que consta de las siguientes partes:

  1. SiguienteContenedor JS
  2. Django backend para la gestión de usuarios
  3. API de datos (FastAPI) protegida con claves de API, para las que también proporcionamos acceso de terceros

El contenedor NextJS usa una clave de API para acceder a la API de datos. No queremos exponer la clave de API al cliente (navegador), por lo que el navegador envía las solicitudes de API al contenedor NextJS, que luego las transmite a la API de datos, consulte aquí . Esto parece seguro, pero es más complicado y más lento que enviar solicitudes desde el navegador a la API de datos directamente.

Me pregunto si es posible incluir en la lista blanca la aplicación web en la API de datos, de modo que el cliente (navegador) pueda llamar a la API de datos directamente sin la clave API, pero los terceros no pueden. FastAPI proporciona un TrustedHostMiddleware , pero no es seguro porque es posible falsificar el encabezado del host. Se ha sugerido incluir IP en la lista blanca en su lugar , pero no tenemos una IP dedicada para nuestra aplicación web. Busqué usar el encabezado de referencia, pero no está disponible en el objeto de solicitud de FastAPI por alguna razón (sospecho que hay algún problema de configuración en nuestro alojamiento). Además, el encabezado de referencia también podría falsificarse.

¿Hay alguna forma segura de incluir nuestra aplicación web en la lista blanca para el acceso a la API de datos, o necesitamos transmitir la solicitud a través del contenedor NextJS y usar una clave de API?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

¿Hay alguna forma segura de incluir en la lista blanca nuestra aplicación web para acceder a la API de datos?

No, necesita en todos los casos un mecanismo de autenticación, algo antes del backend que verifique si el cliente es un cliente autorizado.

El patrón más simple es usar el contenedor NextJS como proxy. Proxy que tiene una clave de API para llamar al backend (lo que está haciendo actualmente).

Hay muchas formas de implementar un proxy seguro para un backend, pero esta lógica de autenticación no debe estar dentro del backend sino en un servicio separado (como envoy, nginx...)

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda