Hola,
He estado usando Discourse durante unas 3 semanas y hasta ahora me encantan las posibilidades, la facilidad, la API, la documentación y la meta comunidad. Es una experiencia realmente genial hasta ahora.
En mi empresa tenemos una aplicación web a la que los usuarios pueden iniciar sesión, que está conectada a un sistema backend que almacena a los usuarios. Ahora también queremos ofrecer un foro de Discourse, al que los usuarios existentes deberían poder iniciar sesión a través de SSO.
Estamos usando DiscourseConnect, que está bien documentado aquí. También estamos utilizando la ruta sync_sso para sincronizar instantáneamente cualquier cambio que realicemos en nuestro extremo con Discourse. Esto funciona muy bien hasta ahora.
Ahora el Product Owner tiene dos requisitos que, antes de decidir implementarlos yo mismo, quiero verificar si quizás se pueden configurar directamente en Discourse:
-
En nuestra base de datos interna, los usuarios no tienen nombre de usuario. Pero tienen, entre otras cosas, un nombre real. En nuestro PoC actual, enviamos ese nombre real con el ssoRecord para que Discourse lo almacene y genere un nombre de usuario. Sin embargo, es posible que no podamos hacerlo legalmente y que necesitemos dejar que los usuarios decidan por sí mismos si quieren almacenar su nombre real en nuestra instancia de Discourse y qué nombre de usuario les gustaría tener dentro de nuestra instancia de Discourse.
Pregunta: ¿Es posible detectar cuándo un usuario usa SSO por primera vez y en ese caso redirigirlo a algún tipo de “Página de bienvenida” donde pueda seleccionar qué nombre y nombre de usuario usar? Idealmente, estos se prellenarían con los valores del ssoRecord, pero el usuario tendría que confirmarlos activamente antes de continuar su acción de registro SSO disfrazada de inicio de sesión. -
Hablando de confirmación: Nuevamente, cuando el usuario usa SSO por primera vez, ¿hay alguna manera de asegurarse de que el usuario pueda leer y aceptar nuestros términos y condiciones antes de que sus datos se almacenen realmente en la base de datos de Discourse?
Teóricamente podría implementar ambos pasos en nuestro extremo en nuestra aplicación web. Pero de nuevo, antes de hacerlo, quería consultar y ver si Discourse ofrece algo listo para usar. No pude encontrar nada significativo en la configuración del panel de administración, de ahí mi pregunta aquí ![]()
¡Gracias!
Editar:
Encontré este hilo similar que sugiere usar la opción auth skip create confirm, sin embargo, esta opción ya está desmarcada por defecto.