Sha256: b92c7f8d0ba3f95365699671ae9b6a5c2ab210b664f75b932b2bba495c48136d
Contents?: true
Size: 743 Bytes
Versions: 129
Compression:
Stored size: 743 Bytes
Contents
class ApiClient < ApplicationRecord belongs_to :user accepts_nested_attributes_for :user validates_presence_of :description #TODO add JWT expiration and api client invalidation #TODO rename toke to encoded_token before_create :set_encoded_token! def verify! self.class.invalid_token! 'Invalid Api Client' if Mumukit::Auth::Token.decode(token).uid != user.uid end def self.verify_token!(token) client = find_by token: token invalid_token! 'No Api Client found for Token' unless client client.verify! end private def set_encoded_token! self.token = Mumukit::Auth::Token.encode user.uid, {} end def self.invalid_token!(message) raise Mumukit::Auth::InvalidTokenError, message end end
Version data entries
129 entries across 129 versions & 2 rubygems