Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/concerns/sessionless_authentication.rb')
-rw-r--r--app/controllers/concerns/sessionless_authentication.rb12
1 files changed, 3 insertions, 9 deletions
diff --git a/app/controllers/concerns/sessionless_authentication.rb b/app/controllers/concerns/sessionless_authentication.rb
index d5c26fca957..a9ef33bf3b9 100644
--- a/app/controllers/concerns/sessionless_authentication.rb
+++ b/app/controllers/concerns/sessionless_authentication.rb
@@ -5,12 +5,6 @@
# Controller concern to handle PAT, RSS, and static objects token authentication methods
#
module SessionlessAuthentication
- extend ActiveSupport::Concern
-
- included do
- before_action :enable_admin_mode!, if: :sessionless_user?
- end
-
# This filter handles personal access tokens, atom requests with rss tokens, and static object tokens
def authenticate_sessionless_user!(request_format)
user = Gitlab::Auth::RequestAuthenticator.new(request).find_sessionless_user(request_format)
@@ -32,9 +26,9 @@ module SessionlessAuthentication
end
end
- def enable_admin_mode!
- return unless Feature.enabled?(:user_mode_in_session)
+ def sessionless_bypass_admin_mode!(&block)
+ return yield unless Feature.enabled?(:user_mode_in_session)
- current_user_mode.enable_sessionless_admin_mode!
+ Gitlab::Auth::CurrentUserMode.bypass_session!(current_user.id, &block)
end
end