Sabemos que Discourse oficialmente no tiene una solución para usar Discourse como Proveedor de Oauth2/OIDC.
Para poder implementar mejor el servicio, y también para que todos puedan aportar más ideas a NL, NL ha implementado una versión de Proveedor Oauth2/OIDC en la que los usuarios pueden solicitar sus propias aplicaciones, basándose en Parkour-Vienna/distrust: Use discourse as an OIDC (OAuth 2.0) provider.
Configuración
Utilicé Mysql para almacenar los datos relacionados con el usuario, por lo que el método de uso específico es: primero instalar Mysql/MariaDB, ejecutar el script SQL para crear la base de datos; luego configurar distrust.yml, establecer el contenido relacionado con la base de datos, y luego ejecutar distrust genkey para generar la clave rsa correspondiente; luego ir al backend de Discourse para crear un proveedor de conexión de Discourse, e ingresar la información relevante.
Luego ejecuta
chmod _+x distrust
./distrust
Accede a tu IP:3000/apps y podrás ver la interfaz de la aplicación.