Como posso fazer o Discourse usar o Asp.Net Core 3.1 webapp como um Provedor de Identidade

Aqui está o problema que estou tentando resolver:

  1. Tenho um aplicativo web Asp.net Core 3.1 com Identity (ainda não Identity Server) rodando em beta.example.com. Os usuários podem se registrar, criar perfis, fazer login com Google/FB, etc. Autenticação/Autorização padrão do ASP.net, sem modificações reais no código.
  2. Também tenho um fórum Discourse rodando em um subdomínio (forumbeta.example.com).

Gostaria que o repositório de usuários fosse mantido no aplicativo dotnet core. O aplicativo será o Provedor de Identidade. Quando um usuário tentar fazer login no Discourse, o Discourse deve solicitar ao aplicativo web as informações do usuário (nome, e-mail, possivelmente outros atributos). Se o usuário existir no aplicativo web e já estiver logado, o Discourse deve efetuar o login dele e permitir que ele publique. Se o usuário não existir ou não estiver logado, ele deve ser redirecionado para a página de login/registro do aplicativo, onde poderá criar uma conta ou se cadastrar e, em seguida, ser redirecionado de volta ao Discourse.

Tenho lido bastante sobre o assunto e parece que preciso instalar e configurar o Identity Server 4 no aplicativo dotnet, o que permitirá que ele se torne um Provedor de Identidade. Em seguida, aparentemente, preciso:

  1. Usar a funcionalidade de SSO integrada do Discourse
    OU
  2. Instalar um plugin Oauth2 no Discourse e configurá-lo

Neste ponto, estou um pouco perdido e adoraria contar com a ajuda de alguém experiente para me orientar sobre como proceder. As informações na web estão um pouco desatualizadas e não quero perder horas seguindo um caminho sem saída.

@DotNetCoder Você teve alguma sorte? Estou enfrentando um problema semelhante. Adoraria contar com sua opinião sobre isso.