ari-salt / auth-middleware
A Laravel/Lumen middleware to authorize requests using CIAM ForgeRock.
v1.0.5
2023-10-19 10:04 UTC
Requires
- php: ^7.2
- ari-salt/logger: ^1.0.1
- codercat/jwk-to-pem: ^0.0.3
- firebase/php-jwt: ^v5.2.0
- guzzlehttp/guzzle: ^6.5.3
- laravel/lumen-framework: ^6.0
README
A Laravel/Lumen middleware to authorize requests using CIAM ForgeRock.
Installation
$ composer require ari-salt/auth-middleware
Usage
Add these environments to your app. CIAM_AUDIENCES
and CIAM_ISS
are arrays of strings separated by commas.
CIAM_ALGORITHM=""
CIAM_AUDIENCES=""
CIAM_CACHE_EXPIRATION_HOURS=24
CIAM_CLIENT_ID=""
CIAM_HOST=""
CIAM_HTTP_TIMEOUT=3
CIAM_ISS=""
PEM_PUBLIC_KEY=""
Register middlewares to the routes.
use AriSALT\AuthMiddleware\AuthOfflineMiddleware; use AriSALT\AuthMiddleware\AuthOnlineMiddleware; $app->routeMiddleware([ 'auth_offline' => AuthOfflineMiddleware::class, 'auth_online' => AuthOnlineMiddleware::class ]);
Apply them to the routes.
$router->get('/test', [ 'middleware' => [ 'auth_offline:memberForgeRock,VERIFY_TOKEN,forge-rock', // 'member:memberForgeRock,memberPimcore,VERIFY_TOKEN,forge-rock', ], 'uses' => 'ExampleController@index' ]);
Then, you can use it on your handlers.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class ExampleController extends Controller { public function index(Request $request) { var_dump($request->get('memberForgeRock')); } }