ngabor84/laravel-escher-auth

Escher authentication middleware for the Laravel and Lumen framework

3.1.0 2024-10-04 11:26 UTC

This package is auto-updated.

Last update: 2024-11-04 11:42:45 UTC


README

GitHub license

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'),
];