Nel caso generale ciò sarà impossibile (come puoi dire se un utente anonimo ha un account senza invitarlo ad accedere?). Tuttavia, dovrebbe essere possibile rilevare se un utente ha già una sessione attiva sul tuo sito SSO.
Quell’argomento è piuttosto vecchio, ma penso che il principio dovrebbe ancora applicarsi. In sostanza, aggiungi un URL con un supporto CORS appropriato che restituisca una risposta JSON che indichi se l’utente ha una sessione attiva. Quindi aggiungi del JS al tuo tema Discourse che interroghi quell’URL e attivi il processo SSO se esiste una sessione attiva.