Inicio de sesión SSO con Discourse

No entiendes lo que quiero transmitir. No pregunto sobre la recuperación de detalles de usuario de Discourse después del inicio de sesión. Por favor, comprende el flujo completo de lo que estoy tratando de lograr y hazme saber si es posible con Discourse o si debo proceder con mi propio enfoque.

Actualmente, tengo un proyecto creado con el framework Laravel y quiero brindar a los usuarios acceso al foro de Discourse para recibir comentarios. He decidido implementar el inicio de sesión SSO para Discourse. Creé una cuenta de administrador de Discourse y habilité la configuración necesaria para el inicio de sesión SSO, incluida la habilitación de SSO, la configuración de la URL de redirección y la configuración del secreto.

Ahora, he agregado un botón de ‘Discourse Connect’ dentro de mi proyecto. Quiero que cuando los usuarios hagan clic en este botón, se registren o inicien sesión usando mis credenciales y se inicien sesión automáticamente en Discourse. Cuando los usuarios hacen clic en el botón ‘Discourse Connect’, los redirijo a la URL de mi comunidad base con el punto final de sesión/sso, que luego redirige de regreso a mi URL de Discourse Connect. Recibo los parámetros SSO y sig en la solicitud, que entiendo que son para validación. Sin embargo, necesito el user_id o algún identificador para recuperar los datos del usuario de mi base de datos para validar, autenticar e iniciar sesión del usuario en Discourse.

Mi pregunta es: ¿Existe una API o algún mecanismo en Discourse que pueda devolver el user_id junto con los parámetros SSO y sig en la solicitud? Esto es importante porque, sin recuperar los datos del usuario en la solicitud, tendría que hacer que el usuario inicie sesión nuevamente, lo que proporcionaría una mala experiencia de usuario. Esencialmente, cuando un usuario inicia sesión en mi proyecto y hace clic en el botón ‘Discourse Connect’, se activa la URL de Discourse Connect y recibo los parámetros SSO y sig. Para autenticar al usuario, necesito obtener los datos del usuario de la base de datos, pero esto requeriría que el usuario inicie sesión nuevamente, lo que quiero evitar.

Quiero una experiencia fluida donde, si el usuario ya ha iniciado sesión una vez, no necesita iniciar sesión nuevamente. Deberían poder acceder al foro de Discourse directamente con sus credenciales del proyecto.