token generado aleatoriamente contra token web JSON

9

Estoy intentando asegurar el acceso a mi servidor web.

He estado implementando una autenticación de token web JSON donde genero aleatoriamente una clave secreta y la asocio con ese usuario. La clave secreta se utilizará para codificar el token web JSON. Luego, el usuario utilizará el token web JSON para acceder a mi servidor web.

También estaba pensando en este método más simple. ¿Hay alguna razón para no generar aleatoriamente una clave y asociar al usuario con eso? Entonces autenticar con eso?

    
pregunta Big yellow duck 06.08.2015 - 20:30
fuente

1 respuesta

7

De cualquier manera está bien, solo depende de si quieres que la autenticación sea sin estado.

Ventajas de JWTs:

  • Sin estado.
  • Una sobrecarga de base de datos pequeña o nula.
  • Los componentes de back-end individuales pueden validar el token de forma aislada, simplemente al conocer la clave secreta.

Desventajas:

  • Como el estado de autenticación se almacena del lado del cliente, no puede invalidar los inicios de sesión del lado del servidor.

Dependiendo del apetito de riesgo de su aplicación, esto podría ser una gran desventaja para que mueva toda la lógica de autenticación al lado del servidor.

Tenga en cuenta que podría combinar los dos, y que el token autenticado fuera del lado del servidor validado por el lado del cliente (es decir, el token dentro del JWT está validado por un MAC, y el token se almacena en una base de datos). Esto protege contra la situación en la que un atacante expone su tabla de sesión, ya que un atacante no puede usar los identificadores de sesión directamente para secuestrar una sesión sin conocer la clave secreta utilizada para validar el MAC.

    
respondido por el SilverlightFox 10.08.2015 - 12:40
fuente

Lea otras preguntas en las etiquetas