Questa guida spiega come creare automaticamente gli account utente in Discourse quando è abilitato un provider di autenticazione esterno, in modo che gli utenti vengano creati automaticamente senza visualizzare una pagina di registrazione.
Livello utente richiesto: Amministratore
Creazione automatica degli account utente con autenticazione esterna
Quando colleghi Discourse a un provider di identità esterno tramite DiscourseConnect, il plugin OpenID Connect, il plugin OAuth2 Basic, SAML o un altro provider di autenticazione, Discourse crea gli account utente al primo accesso. Di default, presenta una pagina di registrazione prima di creare l’account, anche quando il provider ha già fornito tutti i dettagli necessari (email, nome utente e nome).
La creazione automatica elimina questo passaggio aggiuntivo. Con le impostazioni corrette abilitate, Discourse crea l’account silenziosamente in background e effettua il login dell’utente immediatamente, garantendo un’esperienza fluida.
Abilitazione della creazione automatica
Per saltare il passaggio di registrazione, devi abilitare l’impostazione del sito auth skip create confirm. Questa impostazione si trova in Admin > Tutte le impostazioni del sito > Pagina di login.
Opzionale: Abilita le impostazioni di sovrascrittura
Queste impostazioni indicano a Discourse di fidarsi dei valori forniti dal tuo provider di identità e di utilizzarli direttamente, senza chiedere all’utente di rivederli. Vai in Admin > Tutte le impostazioni del sito > Pagina di login e seleziona quanto segue:
| Impostazione | Descrizione |
|---|---|
auth overrides username |
Utilizza il nome utente fornito dal provider ad ogni accesso e impedisce all’utente di modificarlo localmente. Si applica a tutti i provider di autenticazione. |
auth overrides email |
Utilizza l’email fornita dal provider ad ogni accesso e impedisce all’utente di modificarla localmente. Si applica a tutti i provider di autenticazione. |
auth overrides name |
Utilizza il nome completo fornito dal provider ad ogni accesso e impedisce all’utente di modificarlo localmente. Si applica a tutti i provider di autenticazione. |
auth overrides avatar |
Utilizza l’avatar fornito dal provider ad ogni accesso e impedisce all’utente di modificarlo localmente. Si applica a tutti i provider di autenticazione. |
I plugin OAuth2 Basic, OpenID Connect e SAML dispongono anche delle proprie impostazioni di sovrascrittura specifiche (
oauth2 overrides email,openid connect overrides email,saml sync email). Queste funzionano allo stesso modo dell’impostazione globaleauth overrides email, ma si applicano solo al rispettivo provider. Per la maggior parte delle configurazioni, le impostazioni globali sopra indicate sono sufficienti.
Domande frequenti
Queste impostazioni si applicano a tutti i plugin di autenticazione o solo a DiscourseConnect?
Le impostazioni auth skip create confirm e auth overrides * si applicano a tutti i provider di autenticazione esterni, inclusi DiscourseConnect, OpenID Connect, OAuth2 Basic, SAML e qualsiasi altro plugin basato sul framework di autenticazione di Discourse.
Posso pre-creare gli account per gli utenti prima che effettuino il login?
Sì, ma solo quando si utilizza DiscourseConnect. Utilizza la route API sync_sso come descritto in Sync DiscourseConnect user data with the sync_sso route.
Qual è la differenza tra DiscourseConnect e i plugin OAuth2/OIDC?
DiscourseConnect è il protocollo SSO personalizzato di Discourse. Consente al tuo sito esterno di avere il pieno controllo sugli account Discourse, inclusa la possibilità di inviare l’iscrizione ai gruppi, sovrascrivere i campi e pre-creare account tramite API. I plugin OAuth2 e OpenID Connect utilizzano protocolli standard del settore, il che li rende più facili da collegare a provider di identità di terze parti con configurazioni minime.