-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
Trix's OpenID Connect (OIDC) support is focused around one provider (Dataporten), but it would be good to make it provider agnostic so that we can either switch to another provider if-need-be or run multiple providers simultaneously.
We should:
- remove hard references to Dataporten as login provider in the code ✔️
- move login provider config from SocialApp (Django Admin) to
settings.py✔️ - allow multiple login providers in parallel ✔️
- when more than one login provider is available, the users should be asked to choose ✔️
- display the name of current login provider (if any) next to last login details on
/user/✔️
TO-DOs
- remove or fix (link back to origin?) burger menu on login provider selection page
- find a less hacky solution for adding logout URLs and expected responses
- translations for login provider selection page (Translations for login provider selection #158)
Known issues
- if you log in using an Allauth OpenID Connect provider you have used before, but with another login backend offered by that identify provider (IdP) you get stuck at
/authenticate/allauth/3rdparty/signup/. I suspect the issue is that the Django user object is already associated with a SocialAccount from that provider, but that the response can't be overwritten the SocialAccount from the provider's other login backend.