class SSO::Server::Warden::Strategies::Passport

Public Instance Methods

authenticate!() click to toggle source
# File lib/sso/server/warden/strategies/passport.rb, line 13
def authenticate!
  debug { 'Authenticating from Passport...' }

  authentication = passport_authentication
  track key: 'server.warden.strategies.passport.authentication'

  if authentication.success?
    debug { 'Authentication on Server from Passport successful.' }
    debug { "Responding with #{authentication.object}" }
    track key: "server.warden.strategies.passport.#{authentication.code}"
    custom! authentication.object
  else
    debug { 'Authentication from Passport on Server failed.' }
    track key: "server.warden.strategies.passport.#{authentication.code}"
    custom! authentication.object
  end

rescue => exception
  ::SSO.config.exception_handler.call exception
end
passport_authentication() click to toggle source
# File lib/sso/server/warden/strategies/passport.rb, line 34
def passport_authentication
  benchmark(name: 'Passport verification') do
    ::SSO::Server::Authentications::Passport.new(request).authenticate
  end
end
valid?() click to toggle source
# File lib/sso/server/warden/strategies/passport.rb, line 9
def valid?
  params['auth_version'].to_s != '' && params['state'] != ''
end