Bonjour, membres !
J’espère que vous allez tous bien.
J’ai construit un forum Discourse et j’ai essayé de le connecter à mon site Web (ASP.NET).
D’abord, j’ai utilisé Discourse-Connect et cela a réussi, cependant, avec cela, les utilisateurs ne peuvent pas se connecter et s’inscrire sur le forum.
J’ai donc essayé d’utiliser Discourse-Api pour me connecter au forum, mais cela n’a pas abouti.
J’ai lu de nombreuses documentations mais je n’ai pas trouvé la bonne solution.
S’il vous plaît, aidez-moi à résoudre ce problème ou dites-moi la possibilité, la bonne solution.
Cordialement
Vous avez deux possibilités :
-
Configurer DiscourseConnect afin que les utilisateurs s’inscrivent et se connectent sur votre site web, et lorsqu’ils essaieront de se connecter à votre forum, cela sera automatique. C’est la configuration habituelle. Si vous configurez les choses ainsi, toute l’inscription et la connexion se feront sur votre site web. La connexion et l’inscription par nom d’utilisateur/mot de passe sur votre forum seront désactivées.
-
Configurer DiscourseConnect afin que les utilisateurs s’inscrivent et se connectent sur votre forum, et lorsqu’ils essaieront de se connecter à votre (vos) site(s) web, cela sera automatique. C’est ce qu’on appelle configurer Discourse comme fournisseur DiscourseConnect, et vous trouverez comment faire ici.
Merci pour votre réponse rapide.
Existe-t-il des possibilités sans DiscourseConnect ?
Pourquoi ne voulez-vous pas l’utiliser ?
Bien sûr, vous pouvez implémenter quelque chose vous-même, mais vous jetterez des années d’expérience qui ont été consacrées à la construction de DiscourseConnect. Donc, avant de décider d’entreprendre cette tâche énorme, vous devez décider quelle bonne raison vous avez de construire quelque chose vous-même au lieu d’utiliser ce qui est déjà disponible.
Bien sûr, je sais que DiscourseConnect est une excellente fonctionnalité.
Mais mon objectif est la connexion et l’inscription locales sur le forum Discourse.
J’ai donc essayé d’utiliser l’API Discourse.
N’y a-t-il pas de possibilités avec l’API Discourse ?
Merci.
Cordialement
Ok, si vous souhaitez effectuer une connexion et une inscription locales sur Discourse, veuillez me dire quel type d’intégration avec votre site Web vous recherchez.
Mon objectif est le suivant :
- Si un utilisateur est connecté à mon site, lorsqu’il accède au forum, il est automatiquement connecté au forum.
- Et l’utilisateur peut se connecter et s’inscrire sur le forum.
- Si un utilisateur est connecté au forum, lorsqu’il accède à mon site, il est automatiquement connecté à mon site.
Avec DiscourseConnect, je peux réaliser 1) et 3), mais pas 2).
Or, 2) est très important pour nous.
Si vous autorisez les utilisateurs à s’inscrire à deux endroits, les choses deviendront rapidement un désordre, et c’est pourquoi vous devez faire un choix : soit les utilisateurs s’inscrivent sur votre site Web, soit les utilisateurs s’inscrivent sur votre forum, mais pas les deux.
Pourquoi est-ce si important pour vous ?
Merci pour votre aide.
Cependant, mon patron le veut.
Veuillez vérifier ma performance.
J’ai essayé de performer avec l’API Discourse comme ceci :
- appeler GET ‘/session/csrf’ et obtenir le jeton csrf et le cookie
- appeler POST ‘/session’ avec Header : ‘X-CSRF-Token’=‘jeton csrf’, ‘Cookie’ = ‘cookie obtenu’, Données : login, mot de passe, fuseau horaire, méthode second-factor, authenticity-token
- appeler POST ‘/login’ avec Header : ‘Cookie’=‘cookie obtenu depuis /session’
Données : nom d’utilisateur, mot de passe, redirection
Tous les journaux sont identiques au flux de connexion Discourse.
Mais lorsque je redirige vers le forum Discourse, l’utilisateur n’est pas connecté.
Comment puis-je résoudre ce problème ? Qu’est-ce qui ne va pas ?
Merci encore pour votre aide.
PS. Mon serveur est un serveur Ubuntu Nginx.
Alors vous devrez expliquer à votre patron qu’avoir des utilisateurs qui s’enregistrent à plusieurs endroits est une très mauvaise idée. Les choses deviendront un énorme gâchis. Expliquez-lui ce qui se passe lorsque vous vous enregistrez sur le site Web avec le nom d’utilisateurA et sur le forum avec le nom d’utilisateurB, avec la même adresse e-mail ! Ou ce qui arriverait si l’utilisateur changeait son mot de passe uniquement sur le site Web, ou uniquement sur Discourse. Alors les choses casseront !
Ce que vous avez fait connecte votre SERVEUR au forum en tant qu’utilisateur. Il ne définira pas les cookies de session pour l’utilisateur, donc il ne connectera pas l’utilisateur au forum.
De plus, vous avez apparemment le mot de passe en texte brut de l’utilisateur à votre disposition. C’est une TRÈS MAUVAISE idée. Vous devriez toujours stocker un hachage (chiffrement unidirectionnel) d’un mot de passe, et jamais le mot de passe en texte brut. Lorsque votre base de données sera piratée, tous les mots de passe de vos utilisateurs seront connus de l’attaquant. Une autre bonne chose à expliquer à votre patron.
Je vous ai donné trois bonnes raisons que vous pouvez utiliser pour convaincre votre patron de faire les choses différemment. Cela ne mènera qu’à d’énormes problèmes. Je ne peux pas vous aider à faire fonctionner cela, car cela ne fonctionnera pas. Même si vous y parvenez, cela ne fonctionnera qu’à court terme.
Compris.
Je vais expliquer cela à mon patron.
Merci beaucoup.
J’aimerais en discuter davantage avec vous (pas à ce sujet, bien sûr).
Cordialement
S’il vous plaît, aidez-moi encore une fois.
Mon serveur de forum a un domaine principal et plusieurs sous-domaines.
Puis-je créer plusieurs forums Discourse sur chaque domaine en utilisant une seule base de données ?
Et puis-je construire comme ceci ?
- Sur le domaine principal, connexion et inscription locales possibles.
- Sur les sous-domaines, avec DiscourseConnect, connexion à mes sites.
Si possible, veuillez me guider pour construire.
Si impossible, veuillez m’en indiquer la raison.
Merci.
Oui, c’est possible.
- Recherchez « multisite » sur ce forum.
- Configurez le site principal comme fournisseur DiscourseConnect
- Configurez les sites de sous-domaines comme clients DiscourseConnect