C’è un modo per inserire una riga nella tabella user_associated_account tramite la REST API?
Per fornirti un contesto, ho bisogno di poter creare utenti sulla nostra istanza di Discourse e collegarli al nostro provider OAuth2.
Quando gli utenti accedono dall’interfaccia utente di Discourse (tramite il plugin OAuth2 Basic), il loro account viene collegato e posso ottenere il loro ID utente Discourse dal loro UID esterno utilizzando GET /u/by-external/oauth2_basic/{external_uid}.
Tuttavia, quando creiamo utenti tramite la REST API (POST /users.json), non vedo alcun modo per collegare il loro account al corrispondente account OAuth2 (se non accedono manualmente a Discourse).
A titolo informativo, il plugin OAuth2 basic ha implementato il nuovo sistema Auth::ManagedAuthenticator: Move to ManagedAuthenticator by angusmcleod · Pull Request #21 · discourse/discourse-oauth2-basic · GitHub
Cosa ho provato:
- Ho consultato la documentazione dell’API ma non ho trovato alcun indizio.
- Ho individuato quale route dell’API viene chiamata per ottenere gli account associati di un utente:
GET /u/{username}/emails.json. Tuttavia, questa route non sembra supportare il metodo HTTPPUTe non espone i campi della tabellauser_associated_accounts(provider_name,provider_uideuser_id). - Ho anche esaminato le impostazioni di Discourse per vedere se c’era qualcosa di correlato a questo problema, ma senza successo.
- Ho controllato su meta.discourse.org ma non ho trovato una soluzione.
Qualsiasi aiuto è molto apprezzato! Grazie ![]()