ngabor84 / laravel-escher-auth
Escher authentication middleware for the Laravel and Lumen framework
Installs: 8 270
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 3
Open Issues: 0
Requires
- php: ^8.2
- ext-json: *
- emartech/escher: ^4.0
- firebase/php-jwt: ^v6.10
- illuminate/support: ^v11.26
- symfony/http-foundation: ^v7.1
- symfony/http-kernel: ^v7.1
Requires (Dev)
- laravel/framework: ^v11.26
- laravel/lumen-framework: ^11.0
- orchestra/testbench: ^v9.5
- phpunit/phpunit: ^11.3
README
Escher Auth Middleware
Escher authentication middleware for the Laravel and Lumen framework.
About
This package allows you to authenticate the incoming requests with Escher authentication.
Installation
Require the ngabor84/laravel-escher-auth package in your composer.json and update your dependencies:
composer require ngabor84/laravel-escher-auth
Usage with Laravel
Add the service provider to the providers array in the config/app.php config file as follows:
'providers' => [ ... \Middleware\Auth\Escher\Providers\LaravelServiceProvider::class, ]
Run the following command to publish the package config file:
php artisan vendor:publish --provider="Middleware\Auth\Escher\Providers\LaravelServiceProvider"
You should now have a config/escher.php file that allows you to configure the basics of this package.
Usage with Lumen
Add the following snippet to the bootstrap/app.php file under the providers section as follows:
$app->register(\Middleware\Auth\Escher\Providers\LumenServiceProvider::class); ... $app->configure('escher');
Create a config directory (if it's not exist), and create an escher.php in it with the plugin configuration like this:
return [ 'hashAlgo' => 'SHA256', 'algoPrefix' => 'EMS', 'vendorKey' => 'EMS', 'authHeaderKey' => 'X-EMS-Auth', 'dateHeaderKey' => 'X-EMS-Date', 'clockSkew' => '300', 'credentialScope' => env('ESCHER_CREDENTIAL_SCOPE'), 'keyDB' => env('ESCHER_KEY_DB'), ];