jwt-auth: Invalid value provided for claim [iat]

Subject of the issue

I’m facing problem with IAT parameter on different servers. there is no possible way to understand Why this happens. Adding this info. May be someone will help me.

Your environment

Q A
Bug? yes
New Feature? no
Framework Lumen
Framework version 5.7.8
Package version 1.0.0-rc.4.1
PHP version 7.2.14

Steps to reproduce

periodical bug. Can’t tell steps to reproduce ( for now ).

Expected behaviour

new token is generated

Actual behaviour

Stack trace:
#0 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Claims/Claim.php(56): Tymon\JWTAuth\Claims\IssuedAt->validateCreate(1564121609)
#1 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Claims/DatetimeTrait.php(47): Tymon\JWTAuth\Claims\Claim->setValue(1564121609)
#2 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Claims/Claim.php(42): Tymon\JWTAuth\Claims\IssuedAt->setValue(1564121609)
#3 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Claims/Factory.php(79): Tymon\JWTAuth\Claims\Claim->__construct(1564121609)
#4 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Claims/Factory.php(110): Tymon\JWTAuth\Claims\Factory->get('iat', 1564121609)
#5 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Factory.php(147): Tymon\JWTAuth\Claims\Factory->make('iat')
#6 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Factory.php(173): Tymon\JWTAuth\Factory->buildClaims()
#7 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Factory.php(87): Tymon\JWTAuth\Factory->buildClaimsCollection()
#8 /var/www/collectors-api/vendor/tymon/jwt-auth/src/Manager.php(106): Tymon\JWTAuth\Factory->make()
#9 /var/www/collectors-api/vendor/tymon/jwt-auth/src/JWT.php(200): Tymon\JWTAuth\Manager->decode(Object(Tymon\JWTAuth\Token))
#10 /var/www/collectors-api/vendor/tymon/jwt-auth/src/JWT.php(210): Tymon\JWTAuth\JWT->getPayload()
#11 /var/www/collectors-api/vendor/tymon/jwt-auth/src/JWT.php(288): Tymon\JWTAuth\JWT->payload()
#12 /var/www/collectors-api/vendor/tymon/jwt-auth/src/JWTGuard.php(406): Tymon\JWTAuth\JWT->checkSubjectModel('App\\Models\\User...')
#13 /var/www/collectors-api/vendor/tymon/jwt-auth/src/JWTGuard.php(80): Tymon\JWTAuth\JWTGuard->validateSubject()
#14 /var/www/collectors-api/vendor/illuminate/auth/GuardHelpers.php(60): Tymon\JWTAuth\JWTGuard->user()
#15 /var/www/collectors-api/vendor/illuminate/auth/GuardHelpers.php(70): Tymon\JWTAuth\JWTGuard->check()
#16 /var/www/collectors-api/app/Http/Middleware/Authenticate.php(52): Tymon\JWTAuth\JWTGuard->guest()
#17 /var/www/collectors-api/vendor/illuminate/pipeline/Pipeline.php(163): App\Http\Middleware\Authenticate->handle(Object(Laravel\Lumen\Http\Request), Object(Closure))
#18 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Laravel\Lumen\Http\Request))
#19 /var/www/collectors-api/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Laravel\Lumen\Http\Request))
#20 /var/www/collectors-api/vendor/illuminate/pipeline/Pipeline.php(104): Laravel\Lumen\Routing\Pipeline->Laravel\Lumen\Routing\{closure}(Object(Laravel\Lumen\Http\Request))
#21 /var/www/collectors-api/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(415): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#22 /var/www/collectors-api/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(261): Laravel\Lumen\Application->sendThroughPipeline(Array, Object(Closure))
#23 /var/www/collectors-api/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(165): Laravel\Lumen\Application->handleFoundRoute(Array)
#24 /var/www/collectors-api/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(418): Laravel\Lumen\Application->Laravel\Lumen\Concerns\{closure}(Object(Laravel\Lumen\Http\Request))
#25 /var/www/collectors-api/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(171): Laravel\Lumen\Application->sendThroughPipeline(Array, Object(Closure))
#26 /var/www/collectors-api/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(108): Laravel\Lumen\Application->dispatch(NULL)
#27 /var/www/collectors-api/public/index.php(28): Laravel\Lumen\Application->run()
#28 {main}```

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Reactions: 1
  • Comments: 18

Most upvoted comments

My issue was connected with server settings of time synchronization. So, token was generated in one moment and after time sync - this was “in future”. So, first of all - check how you’re time() working and what data is shown. After this - you can do your conclusion