Actualizar token de acceso con token de acceso

1

¿Se envía para permitir que una aplicación de cliente web (JavaScript) se actualice Access Toke utilizando Token de acceso (no Actualizar token ) que está a punto de expirar? ¿Cuáles son los inconvenientes de utilizar este proceso?

    
pregunta Maksim 09.09.2016 - 22:03
fuente

3 respuestas

1

De hecho, seguramente debes hacer esto en todos los procesos normales. De lo contrario, está obligando a sus usuarios a iniciar de nuevo un inicio de sesión completo.

Dadas las debilidades de los tokens web como JWT (por ejemplo, propensos a los ataques de repetición y captura de main-the-middle), mantener los tokens cortos es una necesidad. Esto reduce al menos las oportunidades para que un atacante obtenga un token válido (a través de un ataque MiTM) y luego lo use en un ataque de repetición.

Si desea aumentar los tiempos de caducidad del token, debe agregar más protecciones al proceso de comunicaciones, como pasar datos de tipo de firma cifrados, como las direcciones IP, para reducir el riesgo de un ataque de reproducción.

    
respondido por el Julian Knight 10.09.2016 - 14:55
fuente
1

Con la siguiente justificación, desaconsejaría .

Acabo de hacer una pregunta similar:

OAuth2 Flujo implícito: Posible ¿Los vectores de ataque de tokens refrescantes a través de CORS?

Elegimos hacerlo de una manera diferente, simple debido al siguiente problema: el almacenamiento del token de acceso en el flujo implícito podría estar sujeto a compromiso, y como tal nunca debería ser válido por más de su vida real.

De lo contrario, podría sacar el token de acceso del SPA (aplicación web de Javascript, aplicación de página única) y usarlo para otras cosas, pudiendo actualizar siempre el token utilizando el token de acceso. Esto generalmente no es lo que querrías que sucediera. Desea algo adicional para demostrar que la persona que llama es realmente la que el token reclama que es, por ejemplo. una sesión de IdP.

Por lo general, un token de acceso no solo se puede utilizar desde un navegador para realizar llamadas CORS, sino que se puede usar con cualquier cliente http que se burle del comportamiento del navegador, es decir, también en las secuencias de comandos. Y la apertura de dicho punto final le proporciona una API completamente utilizable por script con un token de acceso infinitamente válido (o: token de acceso infinitamente renovable). Dependiendo de su caso de uso, esto puede ser un problema.

    
respondido por el donmartin 01.12.2016 - 16:57
fuente
0

Si tiene un token de acceso válido, tiene acceso para hacer lo que normalmente podría hacer con este token de acceso dado. Entonces, si confías en cómo obtuvieron este token, puedes confiar en ellos cuando quieran otro.

El único inconveniente sería si está usando esto para forzar el cierre de sesión después de un cierto tiempo.

    
respondido por el d1str0 09.09.2016 - 23:18
fuente

Lea otras preguntas en las etiquetas