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

SSO support (OAuth2/OIDC, LDAP) #2379

Open
jhbruhn opened this issue Nov 15, 2022 · 5 comments
Open

SSO support (OAuth2/OIDC, LDAP) #2379

jhbruhn opened this issue Nov 15, 2022 · 5 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@jhbruhn
Copy link

jhbruhn commented Nov 15, 2022

Is your feature request related to a problem? Please describe.
Managing users for a server which provides multiple services (Mastodon, Matrix, bookwyrm) gets tedious without a central user store. This can be solved by using exactly that and simplifying login using SSO.

Describe the solution you'd like
It would be nice to be able to Sign in (and create if needed) users using the OpenID Connect standard.

Describe alternatives you've considered
Alternatively, backing the user store using LDAP could be an option, but is less preferred because a proper SSO solution can be more secure (2FA) and streamlined.

@mouse-reeve mouse-reeve added enhancement New feature or request help wanted Extra attention is needed labels Nov 15, 2022
@loleg
Copy link

loleg commented Nov 25, 2022

In particular, being able to login through the Fediverse would be a good start. A combination of Mastodon OAuth and Django OAuth Toolkit would do this.

@osresearch
Copy link
Contributor

osresearch commented Nov 26, 2022

I've built docker files to allow https://v.st/ to run mastodon, matrix, pixelfed, hedgedocs, grafana, and gitea with a common SSO and would like to also support bookwyrm. It seems that every one of those uses a different implementation language and framework for user auth, so... yeah, it's just a simple matter of programming. It looks like django has a OIDC interface that might be possible to integrate with the login flow: https://mozilla-django-oidc.readthedocs.io/en/stable/installation.html#quick-start

@osresearch
Copy link
Contributor

I have hacked together a draft pull request that enables SSO and works with my keycloak configuration #2464

@osresearch
Copy link
Contributor

The patches now support assigning roles via Keycloak, so it is now possible to administer the system via SSO created accounts. The PR is ready for deeper review from someone more familiar with django and the rest of the bookwyrm code tree.

@jhbruhn
Copy link
Author

jhbruhn commented Jul 19, 2023

How is the state of this? I would love to run a BookWyrm instance which can authenticate with my local Keycloak installation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants