Hai perfettamente ragione sul fatto che fare clic su “rispondi” attiverà il flusso di accesso. E se viene utilizzato DiscourseConnect (o qualsiasi altro provider di accesso singolo), la modale di accesso di Discourse verrà saltata ![]()
Tuttavia, penso che l’OP voglia che le persone accedano automaticamente, senza dover fare clic su “rispondi” o “accedi”. Con questo tipo di configurazione, sarebbe totalmente trasparente per gli utenti spostarsi tra il sito principale e la community. Abbiamo ottenuto questo risultato per un paio di clienti, ma si sono trattati di implementazioni personalizzate che non possono essere facilmente generalizzate.
Per fornire un esempio di un approccio: se il tuo forum si trova su forum.example.com e il tuo sito principale si trova su example.com, allora al forum è consentito leggere i cookie da example.com. Pertanto, un componente del tema può verificare l’esistenza di un cookie ed eseguire un’operazione come questa:
const cookie = require("discourse/lib/cookie").default;
if(cookie('name_of_example_com_auth_cookie') && !api.getCurrentUser()){
// L'utente ha un cookie di autenticazione per example.com. È quasi certamente
// autenticato lì, quindi eseguiamo il flusso di autenticazione
window.location = "https://forum.example.com/auth/oidc"
}
(si applicano varie condizioni. ad esempio, il cookie non deve essere http_only, non deve essere un cookie host-only, ecc.)