class RealSavvy::JWT::Token

Public Instance Methods

to_share_token() click to toggle source
# File lib/real_savvy/jwt/token.rb, line 5
def to_share_token
  share_token_payload_keys = ['aud','sub']
  share_token_payload = ::Hash[[share_token_payload_keys, claims.values_at(*share_token_payload_keys)].transpose]
  ShareToken.new(
    ::JWT.encode(
      share_token_payload, nil, 'none'
    )
  )
end

Private Instance Methods

retrieve_claims() click to toggle source
# File lib/real_savvy/jwt/token.rb, line 17
def retrieve_claims
  @claims, @header = ::JWT.decode(
                        token,
                        ::RealSavvy::JWT::Config.public_key,
                        true,
                        algorithm: 'RS256',
                      )
rescue ::JWT::DecodeError => e
  raise ::RealSavvy::JWT::BadCredentials.new(e.message)
end
validate_token() click to toggle source
# File lib/real_savvy/jwt/token.rb, line 28
def validate_token
  ::RealSavvy::JWT::Config.validate_token(self)
end