module ActiveRecord::Jwt::Decoder::ClassMethods
Public Instance Methods
decode_jwt(jwt)
click to toggle source
# File lib/activerecord-jwt/decoder.rb, line 11 def decode_jwt(jwt) payload, header = JWT.decode(jwt, ActiveRecord::Jwt::Decoder.configuration.key, true, ActiveRecord::Jwt::Decoder.configuration.options) payload_valid?(payload) { payload: payload, header: header } rescue JWT::DecodeError => e raise ActiveRecord::Jwt::InvalidError.new(e) end
find_authenticated_jwt(jwt)
click to toggle source
# File lib/activerecord-jwt/decoder.rb, line 6 def find_authenticated_jwt(jwt) decoded_jwt = decode_jwt(jwt) self.find_by(ActiveRecord::Jwt::Decoder.configuration.sub => decoded_jwt[:payload]['sub']) end
Private Instance Methods
payload_valid?(payload)
click to toggle source
# File lib/activerecord-jwt/decoder.rb, line 20 def payload_valid?(payload) raise ActiveRecord::Jwt::InvalidError.new if ActiveRecord::Jwt::Decoder.configuration.class && payload['class'] != self.name.to_s end