Nós vamos migrar Topicbox para um Discourse auto-hospedado, que é muito aberto, mas também não queremos problemas de spam, hackers, etc. Pretendemos permitir autenticação via Google, GitHub e algumas outras fontes.
Vejo opiniões divergentes sobre este assunto nos anos riscos de permitir autenticação via Discourse ID. Então estou me perguntando, qual é a sabedoria atual sobre permitir login usando Discourse ID? Os benefícios superam as desvantagens/risgos potenciais ou é tão ruim quanto os resultados de busca do Google sugerem? Os riscos do Discourse ID são piores do que permitir login via as fontes mencionadas acima?
Os riscos listados são basicamente o que as pessoas chamam de “alucinações”.
Incompatibilidade de Reputação: Níveis de confiança (TL0–TL4) conquistados em outros fóruns podem não estar alinhados com os padrões da sua comunidade, concedendo potencialmente a usuários externos privilégios de postagem ou moderação que não foram conquistados localmente.
A Discourse ID não faz isso.
Dependência de Dados: Você depende de servidores ou redes externas para verificação de identidade. Se o provedor de login remoto tiver problemas de indisponibilidade ou alterar suas regras de API, seus usuários podem perder o acesso.
O mesmo é verdade para qualquer login social.
Vulnerabilidades em Cadeia: A postura de segurança do seu site fica vinculada ao site participante mais fraco ou ao provedor de identidade central. Se um site parceiro externo for comprometido, agentes mal-intencionados podem usar essas contas para acessar sua instância.
A Discourse ID é construída sobre o Discourse, que é o mesmo software que sua comunidade executará.
Propagação de Sequestro de Conta: Se um usuário usar uma senha fraca ou sofrer um vazamento de credenciais em um site participante remoto, esse estado comprometido pode fluir diretamente para o fluxo de autenticação do seu fórum.
Isso não faz sentido.
Use a Discourse ID se quiser ter muitos logins sociais com zero esforço. Não a use se quiser controlar exatamente quais métodos os usuários podem usar para fazer login no seu site.
Obrigado a todos pelo feedback. Isso confirma meu próprio raciocínio. (Quem confia nos resultados do Google nos dias de hoje?)
Pergunta: O outro lado da minha pergunta inicial é: existe uma maneira de permitir contas locais seletivas? Em outras palavras, permitir contas criadas em nosso Discourse para, digamos, administradores, mas exigir que todas as outras sejam via GitHub, etc? Isso pode ser conseguido dando convites a um administrador em potencial, e os convites seriam o único método permitido para criar uma conta local?