SSO - la imagen personalizada no se actualiza de nuevo una vez que se actualiza inicialmente

Estamos integrando Discourse con la plataforma Php/Laravel donde hemos implementado SSO. La imagen personalizada de los usuarios se actualiza solo una vez. Sin embargo, si cambio la imagen de perfil en la plataforma Laravel, la imagen personalizada no se actualiza en Discourse de nuevo, incluso después de cerrar sesión y volver a iniciarla.

Incluso si he pasado ‘avatar_force_update’ como true, la imagen personalizada del avatar no se sobrescribe.

Solo para actualizar

Puedo ver la URL de la imagen de perfil actualizada en el registro SSO, sin embargo, la nueva imagen de perfil no se refleja en Discourse incluso después de cerrar sesión y volver a iniciarla.

¿Y si recargas tu navegador?

¿Tienes habilitada la configuración del sitio discourse_connect_overrides_avatar?

1 me gusta

Gracias por tu respuesta. Si recargo el navegador, abro en modo incógnito o incluso cierro sesión y vuelvo a iniciarla, no se actualiza.

Como se mencionó, solo se actualiza la primera vez. Por ejemplo:

  • Un nuevo usuario tiene un avatar y se conecta a Discourse por primera vez usando SSO, el avatar se actualiza.
  • O un usuario no tiene avatar inicialmente y actualiza el avatar en la plataforma, y en ese caso se refleja en Discourse.
  • Pero un usuario tiene un avatar y si actualiza un nuevo avatar en la plataforma, no se actualiza en Discourse, incluso si cierro sesión/inicio sesión de nuevo, o lo intento en un navegador diferente. Puedo ver la URL de la foto de perfil actualizada en el registro de SSO, pero el avatar no se actualiza.

¡Gracias por tu respuesta Renato! No tengo ninguna otra casilla marcada

Puedes intentar activar el registro detallado y revisar los registros para ver si el sistema SSO está enviando la información del avatar.

1 me gusta

Podría valer la pena habilitar la configuración discourse connect overrides avatar, cerrar sesión en Discourse y volver a iniciarla. Estoy bastante seguro de que se espera que el avatar se pueda actualizar sin esa configuración habilitada, siempre que el parámetro avatar_force_update se establezca en true en la carga útil de SSO. Sin embargo, el código que maneja esto es algo complejo: discourse/app/models/discourse_connect.rb at 2ff3f44b957268718e03554fb25d485e1d449ed5 · discourse/discourse · GitHub.

Si no puedes habilitar esa configuración, o simplemente tienes curiosidad por saber qué está pasando, otra cosa que puedes comprobar es asegurarte de que el valor que estás pasando para el parámetro avatar_force_update sea interpretado como el booleano true por Discourse. Hay frameworks (notablemente WordPress) donde los valores booleanos se convierten en 0 o 1. Para solucionar ese problema, Discourse aceptará la cadena \"true\" como un valor booleano en la carga útil de SSO. Probablemente puedas confirmar esto mirando el valor del campo avatar_force_update en el registro de SSO que se muestra en la página de administración del usuario. O habilitando la configuración de registro detallado que mencionó Jay.

2 Me gusta