discourse/lib/auth/current_user_provider.rb
Bianca Nenciu 5af9a69a3b 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.
2018-11-12 15:34:12 +01:00

42 lines
930 B
Ruby

module Auth; end
class Auth::CurrentUserProvider
# do all current user initialization here
def initialize(env)
raise NotImplementedError
end
# our current user, return nil if none is found
def current_user
raise NotImplementedError
end
# log on a user and set cookies and session etc.
def log_on_user(user, session, cookies, opts = {})
raise NotImplementedError
end
# optional interface to be called to refresh cookies etc if needed
def refresh_session(user, session, cookies)
end
# api has special rights return true if api was detected
def is_api?
raise NotImplementedError
end
def is_user_api?
raise NotImplementedError
end
# we may need to know very early on in the middleware if an auth token
# exists, to optimise caching
def has_auth_cookie?
raise NotImplementedError
end
def log_off_user(session, cookies)
raise NotImplementedError
end
end