2026-07-23 10:41:46 -04:00
|
|
|
class RetiredToken < ApplicationRecord
|
2026-05-18 13:17:28 -04:00
|
|
|
belongs_to :user
|
|
|
|
|
|
|
|
|
|
validates :jti, presence: true, uniqueness: true
|
|
|
|
|
validates :exp, presence: true
|
|
|
|
|
|
2026-07-23 10:41:46 -04:00
|
|
|
# check if a token is retired
|
|
|
|
|
def self.retired?(jti)
|
2026-05-18 13:17:28 -04:00
|
|
|
exists?(jti: jti)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
# cleanup expired tokens (run this via a scheduled job)
|
|
|
|
|
def self.cleanup_expired
|
|
|
|
|
where("exp < ?", Time.current).delete_all
|
|
|
|
|
end
|
|
|
|
|
end
|