class Rack::PrxAuth::TokenData
Attributes
scopes[R]
Public Class Methods
new(attrs = {})
click to toggle source
# File lib/rack/prx_auth/token_data.rb, line 8 def initialize(attrs = {}) @attributes = attrs @authorized_resources = ::PrxAuth::ResourceMap.new(unpack_aur(attrs['aur'])).freeze if attrs['scope'] @scopes = attrs['scope'].split(' ').freeze else @scopes = [].freeze end end
Public Instance Methods
resources(namespace=nil, scope=nil)
click to toggle source
# File lib/rack/prx_auth/token_data.rb, line 20 def resources(namespace=nil, scope=nil) @authorized_resources.resources(namespace, scope) end
user_id()
click to toggle source
# File lib/rack/prx_auth/token_data.rb, line 24 def user_id @attributes['sub'] end
Private Instance Methods
unpack_aur(aur)
click to toggle source
# File lib/rack/prx_auth/token_data.rb, line 38 def unpack_aur(aur) return {} if aur.nil? aur.clone.tap do |result| unless result['$'].nil? result.delete('$').each do |role, resources| resources.each do |res| result[res.to_s] = role end end end end end