Gibt es eine Möglichkeit, über die REST-API einen Eintrag in die Tabelle user_associated_account einzufügen?
Um Ihnen etwas Kontext zu geben: Ich muss in der Lage sein, Benutzer in unserer Discourse-Instanz zu erstellen und diese mit unserem OAuth2-Anbieter zu verknüpfen.
Wenn sich Benutzer über die Discourse-Benutzeroberfläche anmelden (über das OAuth2 Basic Plugin), wird ihr Konto verknüpft, und ich kann ihre Discourse-Benutzer-ID über ihre externe UID mit GET /u/by-external/oauth2_basic/{external_uid} abrufen.
Wenn wir jedoch Benutzer über die REST-API erstellen (POST /users.json), sehe ich keine Möglichkeit, ihr Konto mit dem entsprechenden OAuth2-Konto zu verknüpfen (sofern sie sich nicht manuell bei Discourse anmelden).
Als Info: Das OAuth2 Basic Plugin hat das neue System Auth::ManagedAuthenticator implementiert: Move to ManagedAuthenticator by angusmcleod · Pull Request #21 · discourse/discourse-oauth2-basic · GitHub
Meine Versuche:
- Ich habe die API-Dokumentation durchsucht, konnte aber keinen Hinweis finden.
- Ich habe herausgefunden, welche API-Route aufgerufen wird, um die verknüpften Konten eines Benutzers abzurufen:
GET /u/{username}/emails.json. Diese Route unterstützt jedoch scheinbar keine HTTP-MethodePUTund stellt keine Felder der Tabelleuser_associated_accountszur Verfügung (provider_name,provider_uidunduser_id). - Ich habe auch in den Discourse-Einstellungen nach etwas gesucht, das mit diesem Problem zusammenhängen könnte, ohne Erfolg.
- Ich habe auf meta.discourse.org nach einer Lösung gesucht und nichts gefunden.
Jede Hilfe wird sehr geschätzt! Danke ![]()