Stiamo utilizzando la nostra stessa applicazione come provider SSO per Discourse e stiamo riscontrando un problema quando colleghiamo gli utenti a topic privati nel nostro forum Discourse dalla nostra applicazione: l’autenticazione viene attivata solo cliccando sul pulsante ‘Login’.
- Utilizziamo il nostro sistema come provider SSO per Discourse.
- Abbiamo una combinazione di pagine pubbliche e private su Discourse, quindi non abbiamo impostato
login_required. - Se un utente si autentica nel nostro sistema e lo reindirizziamo all’URL radice di Discourse, gli vengono mostrate le categorie pubbliche ma non risulta autenticato.
- Se un utente si autentica nel nostro sistema e lo reindirizziamo all’URL di Discourse + /login, viene autenticato correttamente e reindirizzato all’URL radice di Discourse.
- Se un utente si autentica nel nostro sistema e lo reindirizziamo all’URL di una categoria/topic privata su Discourse, gli viene mostrata una pagina che gli chiede di effettuare il login. Se clicca su Login, viene automaticamente autenticato e gli viene mostrato il category/topic.
Questo ultimo caso è quello problematico. Ritengo che una delle seguenti soluzioni sarebbe adeguata:
- possiamo collegarci a ourdiscourse.com/c/some-category?login=true e viene eseguita un’analisi dell’autenticazione: se l’utente è autenticato, gli viene mostrato il topic. In caso contrario, viene inviato al nostro provider SSO e reindirizzato al topic dopo il login.
- possiamo collegarci a ourdiscourse.com/login?redirect=c/some-category e viene eseguita un’analisi dell’autenticazione: se riuscita, viene reindirizzato alla pagina presente nella stringa di query; in caso contrario, viene reindirizzato al provider SSO e, dopo un’autenticazione riuscita, viene reindirizzato alla pagina presente nella stringa di query.
- possiamo collegarci a ourdiscourse.com/c/some-category e, se si tratta di una pagina privata, Discourse esegue un’analisi dell’autenticazione: se riuscita, l’utente viene portato alla categoria; in caso contrario, viene reindirizzato al provider SSO e poi riportato indietro.
Grazie!
(Ho già pubblicato il problema qui - mi scuso per i numerosi post, ma pensavo che un nuovo argomento potesse ottenere più risposte).