es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Inicio de sesión al utilizar OpenID para autenticación de primeros de partida.

Estoy construyendo varios microservicios de primera parte con requisitos que me llevaron a estar interesado en utilizar OpenID/OAuth para toda mi comunicación de primera parte. Los requisitos son los siguientes:

  • 2 servidores de recursos.
  • 1 sitio web con acceso a ambos servidores de recursos desde el cliente (NextJS – ReactJS SPA habilitada para SSR).
  • 1 microservicio de automatización con acceso total a ambos servidores de recursos mediante credenciales de cliente.

Con estos requisitos, pensé que sería mejor utilizar OpenID para cada conexión de primera parte también. Eso significa que cuando inicio sesión (a través de la SPA -> API), inmediatamente utilizo el flujo de código de autorización para obtener un código de autorización que luego envío a una Ruta de API de NextJS para verificar y luego guardo el token de actualización y el token de acceso en el lado del cliente. Mi pregunta es si esta es una estrategia sólida y, si lo es, ¿cuál es la mejor manera de autenticar la solicitud /connect/authorize después de la solicitud de inicio de sesión de la API? ¿Sería…?

  • …utilizar una cookie temporal con tiempo de expiración de 30 segundos?
  • …utilizar algún tipo de código de un solo uso temporal?
  • …alguna otra solución mejor que desconozco?
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en seguridad, microservicios, OpenID Connect, OpenID y OpenIddict, recomendaría el uso de OpenID Connect para tus microservicios de primera parte. Tu estrategia de utilizar el flujo de autorización de código para obtener un código de autenticación, que luego se envía a una ruta API de NextJS para verificación, seguida de almacenar el token de actualización y el token de acceso en el lado del cliente, es una estrategia sólida.

    En cuanto a la mejor forma de autenticar la solicitud /connect/authorize después de la solicitud de inicio de sesión en la API, recomendaría utilizar un código de un solo uso temporal, ya que este método proporciona una capa adicional de seguridad. Este método implica generar un código único de un solo uso que se envía de vuelta al navegador del usuario, y luego se incluye en la solicitud /connect/authorize posterior. El servidor puede verificar la validez del código antes de permitir el acceso al servidor de recursos.

    En general, se recomienda adoptar un enfoque en capas para la seguridad, que incluya implementar una encriptación adecuada para los datos sensibles, aplicar protocolos de acceso seguros y monitorear y actualizar constantemente las medidas de seguridad.

Comments are closed.