Как заставить Discourse использовать веб-приложение Asp.Net Core 3.1 в качестве провайдера идентификации

Вот проблема, которую я пытаюсь решить:

  1. У меня есть веб-приложение на Asp.net Core 3.1 с Identity (пока не Identity Server), работающее по адресу beta.example.com. Пользователи могут регистрироваться, создавать профили, входить через Google/FB и т.д. Стандартная аутентификация и авторизация ASP.net, без существенных изменений в коде.
  2. У меня также есть форум Discourse, работающий на поддомене (forumbeta.example.com).

Я хочу, чтобы хранилище пользователей поддерживалось в приложении на dotnet core. Приложение будет выступать в роли провайдера идентификации (Identity Provider). Когда пользователь пытается войти в Discourse, форум должен запросить у веб-приложения информацию о пользователе (имя, email, возможно, другие атрибуты). Если пользователь существует в веб-приложении и уже вошел в систему, Discourse должен авторизовать его и разрешить публикацию сообщений. Если пользователь не существует или не вошел в систему, его следует перенаправить на страницу входа/регистрации приложения, где он сможет создать учетную запись или войти, а затем вернуться обратно в Discourse.

Я много читал на эту тему и выяснил, что мне нужно установить и настроить Identity Server 4 в приложении на dotnet, чтобы оно могло стать провайдером идентификации. Затем, по-видимому, мне нужно будет либо:

  1. Использовать встроенную функцию SSO в Discourse
    ИЛИ
  2. Установить плагин OAuth2 в Discourse и настроить его

Я немного запутался и очень надеюсь на помощь опытных специалистов, чтобы понять, как действовать дальше. Информация в интернете несколько устарела, и я не хочу тратить часы на тупиковые пути.

@DotNetCoder Удалось ли вам что-то добиться? Я столкнулся с похожей проблемой. Буду рад получить ваш комментарий по этому вопросу.