FIX: Do not check for suspicious login when impersonating. (#6534)

* FIX: Do not check for suspicious login when impersonating.

* DEV: Add 'impersonate' parameter to log_on_user.
This commit is contained in:
Bianca Nenciu
2018-11-12 16:34:12 +02:00
committed by Régis Hanol
parent 012da86a07
commit 5af9a69a3b
7 changed files with 35 additions and 9 deletions

View File

@ -12,7 +12,7 @@ class Auth::CurrentUserProvider
end
# log on a user and set cookies and session etc.
def log_on_user(user, session, cookies)
def log_on_user(user, session, cookies, opts = {})
raise NotImplementedError
end

View File

@ -149,13 +149,14 @@ class Auth::DefaultCurrentUserProvider
end
end
def log_on_user(user, session, cookies)
def log_on_user(user, session, cookies, opts = {})
@user_token = UserAuthToken.generate!(
user_id: user.id,
user_agent: @env['HTTP_USER_AGENT'],
path: @env['REQUEST_PATH'],
client_ip: @request.ip,
staff: user.staff?)
staff: user.staff?,
impersonate: opts.impersonate)
cookies[TOKEN_COOKIE] = cookie_hash(@user_token.unhashed_auth_token)
unstage_user(user)