Module: Sorcery::Model::Submodules::Jwt::ClassMethods

Defined in:
lib/sorcery/model/submodules/jwt.rb

Instance Method Summary collapse

Instance Method Details

#decode_token(token) ⇒ Object



37
38
39
# File 'lib/sorcery/model/submodules/jwt.rb', line 37

def decode_token(token)
  JWT.decode(token, @sorcery_config.jwt_secret, true, algorithm: @sorcery_config.jwt_algorithm)
end

#issue_token(payload) ⇒ Object



32
33
34
35
# File 'lib/sorcery/model/submodules/jwt.rb', line 32

def issue_token(payload)
  exp_payload = payload.merge(exp: @sorcery_config.session_expiry)
  JWT.encode(exp_payload, @sorcery_config.jwt_secret, @sorcery_config.jwt_algorithm)
end

#token_valid?(token) ⇒ Boolean

Returns:

  • (Boolean)


41
42
43
44
45
# File 'lib/sorcery/model/submodules/jwt.rb', line 41

def token_valid?(token)
  decode_token(token).present?
rescue JWT::DecodeError, JWT::ExpiredSignature
  false
end