class Mumukit::Auth::Client
Attributes
id[R]
secret[R]
Public Class Methods
new(options={})
click to toggle source
# File lib/mumukit/auth/client.rb, line 5 def initialize(options={}) with_config options do |config| @id = config[:id] @secret = config[:secret] end end
Public Instance Methods
decode(encoded_jwt)
click to toggle source
# File lib/mumukit/auth/client.rb, line 20 def decode(encoded_jwt) JWT.decode(encoded_jwt, decoded_secret)[0] end
decoded_secret()
click to toggle source
# File lib/mumukit/auth/client.rb, line 12 def decoded_secret JWT.base64url_decode(secret) end
encode(jwt_hash)
click to toggle source
# File lib/mumukit/auth/client.rb, line 16 def encode(jwt_hash) JWT.encode(jwt_hash, decoded_secret) end
Private Instance Methods
with_config(options) { |config| ... }
click to toggle source
# File lib/mumukit/auth/client.rb, line 26 def with_config(options) client = options[:client] || :default config = Mumukit::Auth.config.clients[client] raise "client config for #{client} is missing" if config.blank? raise "client id for #{client} is missing" if config[:id].blank? raise "client secret for #{client} is missing" if config[:secret].blank? yield config end