Method: Himari::Services::UpstreamAuthentication.from_request

Defined in:
lib/himari/services/upstream_authentication.rb

.from_request(request) ⇒ Object

Parameters:

  • request (Rack::Request)


52
53
54
55
56
57
58
59
60
# File 'lib/himari/services/upstream_authentication.rb', line 52

def self.from_request(request)
  new(
    auth: request.env.fetch('omniauth.auth'),
    request: request,
    claims_rules: Himari::ProviderChain.new(request.env[Himari::Middlewares::ClaimsRule::RACK_KEY] || []).collect,
    authn_rules: Himari::ProviderChain.new(request.env[Himari::Middlewares::AuthenticationRule::RACK_KEY] || []).collect,
    logger: request.env['rack.logger'],
  )
end