Cómo hacer un ciclo de los secretos del cliente OAuth2 sin tiempo de inactividad

4

Tengo una aplicación que se basa en varios proveedores de OAuth2 para sondear datos de antecedentes en nombre de los usuarios, como un proceso en segundo plano. Como cuestión de mejores prácticas, me gustaría alternar periódicamente los secretos de mis clientes.

Los proveedores de OAuth2 que estoy usando (y todos los proveedores de OAuth2 que he visto) me permitirán volver a generar un par clave / secreto, pero no me permitirán crear un segundo par. Si vuelvo a generar mi secreto, necesariamente habrá tiempo de inactividad, ya que la clave existente se invalidará y la aplicación aún no sabrá sobre el nuevo secreto.

No puedo solucionar esto creando una nueva relación OAuth2, porque perdería todos mis permisos para sondear datos en nombre de mis usuarios existentes.

¿Cómo puede una aplicación ciclo de claves OAuth2 sin tiempo de inactividad?

    
pregunta Mark Tabler 17.06.2016 - 20:46
fuente

1 respuesta

2

Esto es algo sobre lo que me he estado preguntando también. No creo que exista una solución en este momento, pero creo que los nuevos sistemas pueden diseñarse para hacer esto sin tiempo de inactividad aprovechando Aserciones de confianza para claves de certificados (TACK) para hacerlo.

Cuando el cliente decide pasar a un nuevo secreto, necesitamos un mecanismo para garantizar que el servidor pueda confiar en el nuevo secreto. En otras palabras, el cliente debe firmar el nuevo secreto (es decir, un TACK). Eso es lo que cubre la especificación TACK, y detalla un ciclo de vida para crear un nuevo TACK, revocar, etc. - lo más importante es que cubre el manejo de TACKs superpuestos para que no tenga tiempo de inactividad.

    
respondido por el HTLee 18.06.2016 - 09:07
fuente

Lea otras preguntas en las etiquetas