Nous souhaitons créer programmatiquement de nouveaux sujets pour nos utilisateurs depuis un service backend. Est-il possible d’associer un utilisateur SSO à Discourse sans qu’il passe par le flux de connexion ?
Si vous utilisez DiscourseConnect pour authentifier les utilisateurs sur votre site, vous pouvez créer ou mettre à jour des utilisateurs de manière programmatique grâce à cette méthode : Synchroniser les données utilisateur DiscourseConnect avec la route sync_sso. Notez que cela ne connecte pas l’utilisateur à Discourse, il se contente de créer le compte utilisateur. Si ce n’est pas ce que vous souhaitez accomplir, envoyez-nous plus de détails sur ce que vous voulez faire.
C’est parfait !
Par ailleurs, nous n’aurions pas besoin de faire cela si les paramètres de nouveau sujet survivaient au flux de connexion SSO. Nous ne trouvons pas la bonne formule pour que cela fonctionne, donc cela redirige les utilisateurs vers un formulaire de sujet vide s’ils ne sont pas déjà connectés. Je peux signaler cela comme un bug quelque part si vous le considérez comme tel. ![]()
Il devrait être possible de faire fonctionner cela. Si les paramètres sont supprimés, je soupçonne qu’ils sont supprimés par le code SSO que vous utilisez, et non par Discourse. Consultez ce message pour plus de détails : Creating pre-filled personal message links - #11. Notez que l’URL d’exemple dans ce message crée un nouveau MP, et non un nouveau sujet. La même approche devrait fonctionner pour créer un nouveau sujet.
Ah, cela fonctionne ! Super. Cette URL ne revient pas à droite, mais il est très facile de lier à l’URL SSO :
http://localhost:3000/new-topic?title=wat&category=questions-and-help/build-debugging&tags=build```