From 867d810d8a9a0790e6051a96dc0b1fdb883ddbf6 Mon Sep 17 00:00:00 2001 From: Stan Hu Date: Wed, 26 Jun 2019 13:11:30 -0700 Subject: Backport CE changes for multiple GroupSAML support This commit makes it possible for https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/14420 to handle multiple SAML providers. --- app/services/users/update_service.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/services/users/update_service.rb b/app/services/users/update_service.rb index 15c13a452ad..8f52e9cb23f 100644 --- a/app/services/users/update_service.rb +++ b/app/services/users/update_service.rb @@ -63,12 +63,20 @@ module Users def assign_identity return unless identity_params.present? - identity = user.identities.find_or_create_by(provider: identity_params[:provider]) # rubocop: disable CodeReuse/ActiveRecord + identity = user.identities.find_or_create_by(provider_params) # rubocop: disable CodeReuse/ActiveRecord identity.update(identity_params) end def identity_attributes [:provider, :extern_uid] end + + def provider_attributes + [:provider] + end + + def provider_params + identity_params.slice(*provider_attributes) + end end end -- cgit v1.2.1