Class: JWT::Claims::IssuedAt
- Inherits:
-
Object
- Object
- JWT::Claims::IssuedAt
- Defined in:
- lib/jwt/claims/issued_at.rb
Overview
The IssuedAt class is responsible for validating the issued at claim ('iat') in a JWT token.
Instance Method Summary collapse
-
#initialize(leeway: 0) ⇒ IssuedAt
constructor
Initializes a new IssuedAt instance.
-
#verify!(context:, **_args) ⇒ nil
Verifies the issued at claim ('iat') in the JWT token.
Constructor Details
#initialize(leeway: 0) ⇒ IssuedAt
Initializes a new IssuedAt instance.
10 11 12 |
# File 'lib/jwt/claims/issued_at.rb', line 10 def initialize(leeway: 0) @leeway = leeway || 0 end |
Instance Method Details
#verify!(context:, **_args) ⇒ nil
Verifies the issued at claim ('iat') in the JWT token.
20 21 22 23 24 25 26 |
# File 'lib/jwt/claims/issued_at.rb', line 20 def verify!(context:, **_args) return unless context.payload.is_a?(Hash) return unless context.payload.key?('iat') iat = context.payload['iat'] raise(JWT::InvalidIatError, 'Invalid iat') if !iat.is_a?(::Numeric) || iat.to_f > (Time.now.to_f + leeway) end |