Class: OmniAuth::Strategies::WSFed::AuthRequest

Inherits:
Object
  • Object
show all
Includes:
ERB::Util
Defined in:
lib/omniauth/strategies/wsfed/auth_request.rb

Constant Summary collapse

SIGNIN_PARAM =
'wsignin1.0'

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(settings, args = {}) ⇒ AuthRequest

Returns a new instance of AuthRequest.

Raises:

  • (ArgumentError)


14
15
16
17
18
19
# File 'lib/omniauth/strategies/wsfed/auth_request.rb', line 14

def initialize(settings, args = {})
  raise ArgumentError.new('OmniAuth-WSFed settings cannot be nil.') if settings.nil?

  @strategy_settings  = settings
  @args               = args
end

Instance Attribute Details

#argsObject (readonly)

Returns the value of attribute args.



12
13
14
# File 'lib/omniauth/strategies/wsfed/auth_request.rb', line 12

def args
  @args
end

#strategy_settingsObject (readonly)

Returns the value of attribute strategy_settings.



12
13
14
# File 'lib/omniauth/strategies/wsfed/auth_request.rb', line 12

def strategy_settings
  @strategy_settings
end

Instance Method Details

#redirect_urlObject



21
22
23
24
25
26
27
# File 'lib/omniauth/strategies/wsfed/auth_request.rb', line 21

def redirect_url
  if args[:whr].nil? && strategy_settings[:home_realm_discovery_path]
    strategy_settings[:home_realm_discovery_path]
  else
    
  end
end

#wsfed_signin_requestObject



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/omniauth/strategies/wsfed/auth_request.rb', line 29

def 
  wa      = SIGNIN_PARAM
  wtrealm = url_encode(strategy_settings[:realm])
  wreply  = url_encode(strategy_settings[:reply])
  wct     = url_encode(Time.now.utc)
  whr     = url_encode(args[:whr])

  query_string = "?wa=#{wa}&wtrealm=#{wtrealm}&wreply=#{wreply}&wctx=#{}&wct=#{wct}"

  unless whr.nil? or whr.empty?
    query_string = "#{query_string}&whr=#{whr}"
  end

  strategy_settings[:issuer] + query_string
end