Preciso usar o Discourse como uma das ferramentas de um projeto. Preciso de uma solução de OAuth que identifique/autorize um usuário em várias plataformas (Discourse, Mediawiki, projeto Consul e outras) com uma única identidade/credenciais.
Um dos requisitos para o sucesso do meu projeto é que todo usuário deve operar sob uma identidade verificada e verificável o tempo todo. Nenhuma anonimidade é permitida.
Eu estava pensando em usar apenas IDs do Outlook/Gmail/Github como provedores de login OAuth, pois são gratuitos e muito comuns. O problema é que, mesmo que eu possa fazer uma verificação manual do tipo KYC no momento do cadastro (algo muito simples, como “envie-me uma foto sua ao lado do seu RG para verificar se você é quem diz ser”), essas plataformas permitem que os usuários mudem seus nomes dentro de seus respectivos provedores. Assim, por exemplo, alguém que foi verificado como John Doe e, portanto, autorizado a operar no Discourse/Mediawiki/Consul sob esse nome, ainda pode mudar seu nome de sua conta Gmail/Outlook e começar a operar sob um nome diferente em minha plataforma, o que pode levar tempo para detectar e potencialmente causar uma quantidade indeterminada de danos.
Então, você conhece alguma solução de OAuth, single sign-on que me permita verificar a identidade de alguém E limite a capacidade de mudar sua identidade posteriormente?
Uma sub-pergunta para isso é: posso limitar as mudanças de nome de usuário dentro do Discourse?
A ajuda será muito apreciada.