4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/standard_id/web/authentication_guard.rb', line 4
def require_session!(session_manager, session:, request:)
session[:return_to_after_authenticating] = request.url
browser_session = session_manager.current_session
emit_session_validating(browser_session, request)
if browser_session.blank?
raise StandardId::NotAuthenticatedError
elsif browser_session.expired?
emit_session_expired(browser_session)
session_manager.clear_session!
raise StandardId::ExpiredSessionError
elsif browser_session.revoked?
session_manager.clear_session!
raise StandardId::RevokedSessionError
end
emit_session_validated(browser_session)
browser_session
end
|