update: new auth

This commit is contained in:
tokumeikoi
2022-07-11 14:48:35 +08:00
parent 2073727a0a
commit dc27410c12
28 changed files with 117 additions and 123 deletions

View File

@ -3,6 +3,7 @@
namespace App\Http\Middleware;
use Closure;
use Laravel\Horizon\Horizon;
class Admin
{
@ -15,9 +16,19 @@ class Admin
*/
public function handle($request, Closure $next)
{
if (!$request->session()->get('is_admin')) {
abort(403, '权限不足');
}
$authorization = $request->input('auth_data') ?? $request->header('authorization');
if (!$authorization) abort(403, '未登录或登陆已过期');
$authData = explode(':', base64_decode($authorization));
if (!isset($authData[1]) || !isset($authData[0])) abort(403, '鉴权失败,请重新登入');
$user = \App\Models\User::where('password', $authData[1])
->where('email', $authData[0])
->first();
if (!$user) abort(403, '鉴权失败,请重新登入');
if (!$user->is_admin) abort(403, '未登录或登陆已过期');
$request->merge([
'user' => $user
]);
return $next($request);
}
}