Crea un link di accesso a DiscourseConnect

Penso che quello che sta succedendo sia che quando visiti un percorso come https://forum.example.com/session/sso?return_path=/t/some-slug/23, Discourse ti reindirizza all’URL di discourse connect, indipendentemente dal fatto che tu sia o meno connesso a Discourse. Questo accade qui:

Il sito del provider SSO dovrebbe quindi gestire il caso degli utenti che sono già connessi al sito. Ecco come il plugin WP Discourse lo gestisce:

Quel codice (ciò che segue l’istruzione else) gestisce il caso degli utenti che sono già connessi a WordPress. Vengono reindirizzati all’URL fornito dal parametro di query return_path. Quindi, dal punto di vista dell’utente, vengono portati direttamente all’URL di ritorno, ma ciò che accade in realtà è che vengono reindirizzati al sito del provider SSO, quindi di nuovo a Discourse.

Penso che il problema sul tuo sito sia che il tuo codice SSO non gestisce il caso degli utenti che sono già connessi al sito.

Al momento non ho le cose impostate per testare questo. È possibile che stia leggendo il codice in modo errato. Prima di guardare il codice, pensavo che venisse eseguito un controllo sul lato Discourse per vedere se l’utente era già connesso a Discourse, ma non sembra essere così che funziona.

3 Mi Piace