Problema con Discourse como proveedor de SSO y registro social

Hola,

Problema

Al usar Discourse como proveedor de SSO a través de la API (dominio A), si intentas registrarte en Discourse (dominio B) con un botón de redes sociales, no ves inmediatamente el modal create-account, sino que vuelves al modal login.

En este punto, necesitas cerrar el modal login, luego hacer clic en el botón Sign Up y verás el modal create-account que deberías haber visto antes.

Demo del problema

Aquí tienes una breve demostración en video:

  • Edge, con caché/cookies limpiadas y sin extensiones.
  • Usando WP-Discourse configurado para usar Discourse como proveedor de SSO (la forma más rápida de mostrar el problema).

Lo que ves primero es que hago clic en el enlace de inicio de sesión de SSO de WP-Discourse.
Después de hacer clic en el botón de Facebook, soy redirigido al modal login en lugar de create-account.

Posible razón

Estamos usando dominios diferentes para Discourse y desde donde se llama a la API.

Para asegurarnos de que el problema no proviene de plugins o cualquier otra cosa, pude reproducirlo con un WordPress limpio (con WP-Discourse configurado para usar Discourse como proveedor de SSO) y un Discourse limpio. Ambos en dominios diferentes.

(Nota: esto no está relacionado con wp-discourse; es solo más fácil mostrar/probar el problema. También podemos reproducirlo con nuestra aplicación que consume la API de Discourse y actúa como proveedor de SSO).

Otras informaciones

  • Configuraciones de seguridad de Discourse deshabilitadas (no estoy seguro si tiene algún efecto, CSP deshabilitada, cookies a Ninguna o Deshabilitadas).
  • Discourse actualizado a la última versión.
  • No hay problemas al iniciar sesión con SSO.
  • Nada en la consola del navegador ni en los registros de Discourse.
  • Si experimentas el problema una vez con la API de SSO e intentas registrarte con redes sociales directamente en Discourse, obtendrás el mismo problema. En este punto, necesitas borrar tus cookies/caché para que funcione. (mismo problema reportado aquí: Suggestion: unite the sign up & log in buttons)

Dado que Discourse es capaz de mostrar el esperado create-modal con campos pre-llenados después de hacer clic manualmente en Sign Up, me hace pensar que hay un error o una situación que Discourse podría manejar. ¿Estoy equivocado?

¿Hay algo que se pueda hacer para corregir este comportamiento? ¿Nos estamos perdiendo algo?

¡Gracias!

¿Es este error tan insignificante que se puede ignorar de nuevo?

Ya reporté un problema similar en enero, pero aquí pueden ver una reproducción minimalista sin nada más, con Discourse vanilla y una implementación oficial de SSO. Si acaso, me gustaría que alguien reconociera que hay un error o dijera que lo que estamos haciendo está mal.

¿Cómo podemos llamar la atención sobre este problema? ¿Es posible contratar miembros del equipo si el dinero es un problema?

– Un cliente y desarrollador frustrado.

Hola, he configurado wp-discourse en una instalación predeterminada de WordPress, establecido WordPress como cliente SSO y configurado el inicio de sesión con Facebook en Discourse. Ambos sitios web están alojados en dominios diferentes.

Dejaré ambos sitios web públicos durante unos días/semanas para que cualquiera con una cuenta de Facebook pueda probar y ver el problema por sí mismo.

edición: eliminé mi Discourse de desarrollo, pero hacía exactamente lo mismo que en el video de arkshine.

Haz clic en “Iniciar sesión con Facebook” y verás que aparece la misma ventana emergente nuevamente en lugar de mostrar la ventana emergente “Crear nueva cuenta” con los campos prellenados.