Auth::User classes do too much
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Problem
The various Auth::User classes are hard to follow, duplicate code between them, and have multiple responsibilities.
E.g. Auth::User::Saml is responsible for:
- Find GitLab user based on SAML uid and provider
- Creating a new user from SAML response if no user is found
- Blocking / unblocking users based on required groups
- Setting user as external/admin based on SAML response
- UserLookup::Ldap
- UserLookup::Email
- UserLookup::Identity
- ProfileUpdater
- AutoLinkLdap
Possible solution
If we could extract orthogonal behaviour we might reduce duplication between the Saml/Ldap/Oauth classes, make it easier to follow, and make it easier to re-use elsewhere.
Edited by 🤖 GitLab Bot 🤖