Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate oauth2 support in Discourse #85

Open
kallisti5 opened this issue Jun 11, 2023 · 4 comments
Open

Investigate oauth2 support in Discourse #85

kallisti5 opened this issue Jun 11, 2023 · 4 comments
Assignees
Labels

Comments

@kallisti5
Copy link
Contributor

Haiku now has a central identity provider. Investigate attaching Discourse to it via oauth2

@kallisti5 kallisti5 added the sso label Jun 11, 2023
@kallisti5
Copy link
Contributor Author

https://github.com/discourse/discourse-oauth2-basic is the oauth2 plugin discourse provides.

@nielx nielx self-assigned this Jun 15, 2023
@nielx
Copy link
Member

nielx commented Jun 15, 2023

I will have a look.

@kallisti5
Copy link
Contributor Author

kallisti5 commented Jun 15, 2023

@nielx oh, by the way. I've already scripted out the user import tool for discourse.

https://github.com/haiku/infrastructure/blob/master/tools/sso/keycloak_discourse_import.rb

It looks if users already exist with a similar email or username is keycloak before importing them. To user it you'll give it your master realm account username and password.

For the input, you just have to export the users from discourse (it's a CSV)

There are a few pre-requisite steps of "gem install ..." to install a few used ruby gems. In theory you can run it multiple times and it will "figure it out and add new people as needed"

@kallisti5
Copy link
Contributor Author

Overall, the onboarding process will likely be:

  • Login
  • "Forgot Password"
  • Reset password
  • Login

On thing that needs validated is the "linkage" between user identities in Keycloak vs the internal identities to ensure accounts remain linked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

2 participants