Não sou especialista no Discourse, mas existem várias maneiras de lidar com isso, e aqui está uma que eu esperaria que pudesse funcionar e tentaria explorar:
- Exigir aprovação para novos usuários do Discourse
- Desenvolver um script no seu site remoto ou em um ambiente serverless que consulte seu banco de dados para uma pessoa e, em seguida, chame a API do Discourse para aprovar ou recusar o novo usuário
- Fazer com que o Discourse realize uma chamada de webhook para o script quando houver um novo usuário
- Personalizar a redação do seu Discourse para descrever melhor aos seus usuários o que está acontecendo
Basicamente, o Discourse possui webhooks e API robustos, então você pode usá-los enquanto escreve seu script personalizado remotamente, na linguagem com a qual se sentir mais confortável.
Se você estiver disposto a escrever um plugin do Discourse em Ruby, isso também funcionaria, mas, pessoalmente, não estou, então acharia essa abordagem mais fácil.