Laravel 5 – 13
PHP 7.0+
No commit activity in last 2 years
No release in over 2 years
Add multiple keychain support to tymon/jwt-auth package
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

phpunit/phpunit
^9.5
mockery/mockery
^1.4

Runtime

 Project Readme

JWT Auth with Multiple Keys

This is an extension of tymon/jwt-auth, adding support to:

  • Replace deprecated namshi/jose with lcobucci/jwt
  • JWT with key pairs instead of a secret
  • Validate a JWT against multiple public keys
  • Use JWT secret as a fallback

Installing

Firstly, you must install tymon/jwt-auth.

Add this package through Composer: composer require "fidelize/jwt-auth-multiple-keys"

Edit your config/jwt.php file adding/editing these lines:

<?php
return [
    // ...
    'providers' => [
        // ...
        'jwt' => 'Fidelize\JWTAuth\JwtAdapter',
        'auth' => 'Fidelize\JWTAuth\AuthAdapter',
        // ...
    ],
    'keys_directory' => '/path/yo/your/keys/directory/'
];
?>
# Don't add a passphrase!
ssh-keygen -t rsa -b 4096 -f keys/jwt.app.key
openssl rsa -in keys/jwt.wholesaler.key -pubout -outform PEM -out keys/jwt.app.key.pub

Warning

Keys must follow the pattern name key.*.key and key.*.key.pub

TODO List

  • Support different name patterns
  • Add command to generate keys