Non stai capendo cosa voglio comunicare. Non sto chiedendo di recuperare i dettagli dell’utente da Discourse dopo il login. Ti prego di capire il flusso completo di ciò che sto cercando di ottenere e di farmi sapere se è possibile con Discourse o se devo procedere con il mio approccio.
Attualmente, ho un progetto creato utilizzando il framework Laravel e voglio fornire agli utenti l’accesso al forum Discourse per il feedback. Ho deciso di implementare il login SSO per Discourse. Ho creato un account amministratore di Discourse e abilitato le impostazioni necessarie per il login SSO, inclusa l’abilitazione dell’SSO, l’impostazione dell’URL di reindirizzamento e la configurazione del segreto.
Ora, ho aggiunto un pulsante ‘Discourse Connect’ all’interno del mio progetto. Voglio che quando gli utenti fanno clic su questo pulsante, si registrino o accedano utilizzando le mie credenziali e accedano automaticamente a Discourse. Quando gli utenti fanno clic sul pulsante ‘Discourse Connect’, vengono reindirizzati all’URL della mia community di base con l’endpoint session/sso, che a sua volta reindirizza al mio URL Discourse Connect. Ricevo i parametri SSO e sig nella richiesta, che capisco siano per la convalida. Tuttavia, ho bisogno dell’user_id o di un identificatore per recuperare i dati dell’utente dal mio database per convalidare, autenticare e accedere all’utente a Discourse.
La mia domanda è: esiste un’API o un meccanismo in Discourse che possa restituire l’user_id insieme ai parametri SSO e sig nella richiesta? Questo è importante perché, senza recuperare i dati dell’utente nella richiesta, dovrei far accedere nuovamente l’utente, il che fornirebbe una scarsa esperienza utente. Essenzialmente, quando un utente accede al mio progetto e fa clic sul pulsante ‘Discourse Connect’, viene attivato l’URL Discourse Connect e ricevo i parametri SSO e sig. Per autenticare l’utente, devo recuperare i dati dell’utente dal database, ma ciò richiederebbe all’utente di accedere nuovamente, cosa che voglio evitare.
Voglio un’esperienza fluida in cui, se l’utente ha già effettuato l’accesso una volta, non ha bisogno di accedere di nuovo. Dovrebbe essere in grado di accedere al forum Discourse direttamente utilizzando le proprie credenziali di progetto.