diff --git a/app/Http/Middleware/EnsureUserIsAdmin.php b/app/Http/Middleware/EnsureUserIsAdmin.php new file mode 100644 index 0000000..b7faee1 --- /dev/null +++ b/app/Http/Middleware/EnsureUserIsAdmin.php @@ -0,0 +1,19 @@ +user() || ! $request->user()->is_admin) { + return response()->json(['message' => 'Apenas administradores podem acessar.'], 403); + } + + return $next($request); + } +} + diff --git a/bootstrap/app.php b/bootstrap/app.php index cd48217..3004fb6 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -13,6 +13,9 @@ ) ->withMiddleware(function (Middleware $middleware): void { $middleware->append(\App\Http\Middleware\ForceJsonResponse::class); + $middleware->alias([ + 'admin' => \App\Http\Middleware\EnsureUserIsAdmin::class, + ]); }) ->withExceptions(function (Exceptions $exceptions): void { //