Can Discourse be used as an OAuth provider?

Can Discourse function as an oAuth provider for a system like Rocket.Chat? I’m still trying to figure out what the difference is between oAuth, SSO, and what all the terminology means. Basically, we need Discourse to host the user database, and another chat system (maybe Rocket.Chat, maybe something else) to patch into that database for authentication purposes.

Not really sure what values would need to go where on Rocket.Chat’s end for testing purposes:

Apologies for my ignorance. This is all new to me. I was trying to follow some of the instructions in other threads, but wasn’t getting very far because they were addressing slightly different situations.

3 Likes

OAuth provider is a completely different thing. It’s not supported. And OAuth provider is rather complicated which takes a lot of effort to build.

4 Likes

Gotcha. Thank you very much.

And just to clarify, what you want to do here is entirely doable. You’d probably want to:

  • Use Discourse as an SSO provider and hook that up with Rocket.Chat’s login.
  • Enable standard OAuth login providers like Google and Facebook for Discourse logins so that users could register/login using those standard services.
5 Likes

I’m really keen to set this up also. I familiar and comfortable with setting up discourse as an SSO provider, but no idea how to get rocket.chat to use it. A little out of scope for you I know, but any idea? I’ve had a pretty good google and look through the Rocket.Chat docs, but can’t seem to find it. My guess is I just don’t quite know the right thing to be looking for.

Would also like rocket.chat using discourse as SSO provider.

3 Likes

Just a bump to suggest the value of using Discourse user management as a community’s single user identity hub. And the easiest, most standard way for others to tap into that is to use Discourse as an oAuth provider (IMHO).

17 Likes

BUMP

This feature would be game-changing for those wanting to federate identity across a number of Discourses - increasingly I am being asked by customers if they can have a [MyHealthTechDiscourse B] but sign in with [ThisOtherHealthTechDiscourseWhichAllOurUsersAreAlreadyOn A]

If [Discourse A] could respond to the OAuth2 login flow at standard endpoints this could be relatively straightforward to build (but probably out reach of my personal ability)

Discourse to Discourse SSO already works out of the box for years.

See Use Discourse as an identity provider (SSO, DiscourseConnect)

3 Likes

Thanks, but that’s some sort of proprietary SSO flow. I was hoping to see standards-based OAuth/OIDC support so that it would work with other software out of the box and not require writing custom plugins for other software to consume DiscourseSSO.

3 Likes

Same thought with you.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.