Class: OmniAuth::Strategies::WSFed::AuthCallback
- Inherits:
-
Object
- Object
- OmniAuth::Strategies::WSFed::AuthCallback
- Defined in:
- lib/omniauth/strategies/wsfed/auth_callback.rb
Constant Summary collapse
- WS_UTILITY =
'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd'
Instance Attribute Summary collapse
-
#options ⇒ Object
Returns the value of attribute options.
-
#raw_callback ⇒ Object
Returns the value of attribute raw_callback.
-
#settings ⇒ Object
Returns the value of attribute settings.
Instance Method Summary collapse
-
#audience ⇒ Object
WS-Trust Envelope and WS* Element Values.
- #claims ⇒ Object (also: #attributes)
- #created_at ⇒ Object
-
#document ⇒ Object
TODO: remove reference to SignedDocument (document) and move it to validation use response variable instead…
- #expires_at ⇒ Object
-
#initialize(raw_callback, settings, options = {}) ⇒ AuthCallback
constructor
A new instance of AuthCallback.
-
#issuer ⇒ Object
Token Values.
-
#name_id ⇒ Object
The value of the user identifier as defined by the id_claim configuration setting…
Constructor Details
#initialize(raw_callback, settings, options = {}) ⇒ AuthCallback
Returns a new instance of AuthCallback.
15 16 17 18 19 20 21 22 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 15 def initialize(raw_callback, settings, = {}) raise ArgumentError.new('Response cannot be nil.') if raw_callback.nil? raise ArgumentError.new('WSFed settings cannot be nil.') if settings.nil? self. = self.raw_callback = raw_callback self.settings = settings end |
Instance Attribute Details
#options ⇒ Object
Returns the value of attribute options.
13 14 15 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 13 def @options end |
#raw_callback ⇒ Object
Returns the value of attribute raw_callback.
13 14 15 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 13 def raw_callback @raw_callback end |
#settings ⇒ Object
Returns the value of attribute settings.
13 14 15 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 13 def settings @settings end |
Instance Method Details
#audience ⇒ Object
WS-Trust Envelope and WS* Element Values
34 35 36 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 34 def audience @audience ||= token.audience end |
#claims ⇒ Object Also known as: attributes
53 54 55 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 53 def claims @claims ||= token.claims end |
#created_at ⇒ Object
38 39 40 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 38 def created_at Time.parse(REXML::XPath.first(wstrust_lifetime, '//wsu:Created', { 'wsu' => WS_UTILITY }).text) end |
#document ⇒ Object
TODO: remove reference to SignedDocument (document) and move it to validation use response variable instead…
27 28 29 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 27 def document @document ||= OmniAuth::Strategies::WSFed::XMLSecurity::SignedDocument.new(raw_callback, settings) end |
#expires_at ⇒ Object
42 43 44 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 42 def expires_at Time.parse(REXML::XPath.first(wstrust_lifetime, '//wsu:Expires', { 'wsu' => WS_UTILITY }).text) end |
#issuer ⇒ Object
Token Values
49 50 51 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 49 def issuer @issuer ||= token.issuer end |
#name_id ⇒ Object
The value of the user identifier as defined by the id_claim configuration setting…
59 60 61 62 63 |
# File 'lib/omniauth/strategies/wsfed/auth_callback.rb', line 59 def name_id @name_id ||= begin claims.has_key?(settings[:id_claim]) ? claims.fetch(settings[:id_claim]) : nil end end |