Este guia explica como provisionar automaticamente contas de usuário no Discourse quando um provedor de autenticação externo está habilitado, de modo que os usuários sejam criados automaticamente sem serem apresentados a uma página de cadastro.
Nível de usuário necessário: Administrador
Provisionamento automático de contas de usuário com autenticação externa
Ao conectar o Discourse a um provedor de identidade externo por meio do DiscourseConnect, do plugin OpenID Connect, do plugin OAuth2 Basic, do SAML ou de outro provedor de autenticação, o Discourse cria contas de usuário no primeiro login. Por padrão, ele apresenta uma página de cadastro antes de criar a conta, mesmo quando o provedor já forneceu todos os detalhes necessários (e-mail, nome de usuário e nome).
O provisionamento automático remove essa etapa extra. Com as configurações corretas habilitadas, o Discourse cria a conta silenciosamente em segundo plano e faz o login do usuário diretamente, proporcionando uma experiência fluida.
Habilitando o provisionamento automático
Para pular a etapa de cadastro, você precisa habilitar a configuração do site auth skip create confirm. Essa configuração está localizada em Admin > Todas as configurações do site > Página de login.
Opcional: Habilitar as configurações de substituição
Essas configurações indicam ao Discourse para confiar nos valores fornecidos pelo seu provedor de identidade e usá-los diretamente, sem pedir que o usuário os revise. Navegue até Admin > Todas as configurações do site > Página de login e marque as seguintes opções:
| Configuração | Descrição |
|---|---|
auth overrides username |
Usa o nome de usuário do provedor diretamente em cada login e impede que o usuário o altere localmente. Aplica-se a todos os provedores de autenticação. |
auth overrides email |
Usa o e-mail do provedor diretamente em cada login e impede que o usuário o altere localmente. Aplica-se a todos os provedores de autenticação. |
auth overrides name |
Usa o nome completo do provedor diretamente em cada login e impede que o usuário o altere localmente. Aplica-se a todos os provedores de autenticação. |
auth overrides avatar |
Usa o avatar do provedor diretamente em cada login e impede que o usuário o altere localmente. Aplica-se a todos os provedores de autenticação. |
Os plugins OAuth2 Basic, OpenID Connect e SAML também possuem suas próprias configurações de substituição específicas do plugin (
oauth2 overrides email,openid connect overrides email,saml sync email). Elas funcionam da mesma forma que a configuração globalauth overrides email, mas aplicam-se apenas ao respectivo provedor. Para a maioria das configurações, as configurações globais acima são suficientes.
Perguntas frequentes (FAQs)
Essas configurações se aplicam a todos os plugins de autenticação ou apenas ao DiscourseConnect?
As configurações auth skip create confirm e auth overrides * aplicam-se a todos os provedores de autenticação externos, incluindo DiscourseConnect, OpenID Connect, OAuth2 Basic, SAML e qualquer outro plugin construído sobre o framework de autenticação do Discourse.
Posso pré-criar contas para usuários antes que eles façam login?
Sim, mas apenas ao usar o DiscourseConnect. Utilize a rota de API sync_sso, conforme descrito em Sync DiscourseConnect user data with the sync_sso route.
Qual é a diferença entre o DiscourseConnect e os plugins OAuth2/OIDC?
O DiscourseConnect é o protocolo SSO personalizado do próprio Discourse. Ele concede ao seu site externo controle total sobre as contas do Discourse, incluindo a capacidade de enviar associação a grupos, substituir campos e pré-criar contas via API. Os plugins OAuth2 e OpenID Connect usam protocolos padrão da indústria, o que facilita a conexão com provedores de identidade de terceiros com configurações mínimas.