Ich nutze gerne SSO und die Discourse-API auf meiner Website. Jetzt möchte ich sie erheblich erweitern, indem ich allen meinen bestehenden Gruppen einen privaten Unterforum-Bereich innerhalb meines Discourse-Forums zur Verfügung stelle (ich habe gerade eine Anleitung dazu verfasst, da die meisten beteiligten APIs schlecht dokumentiert sind). Dies wirft jedoch das Problem auf, dass nicht alle meine Benutzer sich bisher im Forum eingeloggt haben und die Anmeldung ausschließlich über SSO erfolgt. Daher ist es wahrscheinlich, dass einige Gruppenmitglieder keine Forum-Benutzernamen haben. Um sie dennoch einem bestimmten Forum-Gruppenbereich zuordnen zu können, möchte ich ihre Benutzerkonten vorab erstellen. Wie mache ich das? Ich meine, es gibt eine API zum Erstellen von Discourse-Benutzern, aber wie stelle ich sicher, dass, wenn ich ein Konto für Mark erstelle, SSO ihn bei seinem späteren Login in das von mir erstellte Konto einloggt und nicht in ein neues? Danke!
SSO-Benutzer werden anhand der external_id abgeglichen. Falls diese nicht existiert oder nicht übereinstimmt, erfolgt die Zuordnung über die E-Mail-Adresse.
Stellen Sie also sicher, dass einer dieser Werte (vorzugsweise die external_id) übereinstimmt, dann sind Sie auf der sicheren Seite.
Es stellt sich heraus, dass der Pfad POST /users unmöglich war, und ich benötigte Sync DiscourseConnect user data with the sync_sso route, was aus keinem guten Grund viel komplizierter ist. Wie auch immer, es ist erledigt.