mirror of
				https://github.com/v2board/v2board.git
				synced 2025-10-31 09:21:46 +08:00 
			
		
		
		
	update: weak password risk
This commit is contained in:
		| @@ -2,6 +2,7 @@ | ||||
|  | ||||
| namespace App\Http\Middleware; | ||||
|  | ||||
| use App\Services\AuthService; | ||||
| use Closure; | ||||
| use Illuminate\Support\Facades\Cache; | ||||
|  | ||||
| @@ -19,23 +20,10 @@ class User | ||||
|         $authorization = $request->input('auth_data') ?? $request->header('authorization'); | ||||
|         if (!$authorization) abort(403, '未登录或登陆已过期'); | ||||
|  | ||||
|         $authData = explode(':', base64_decode($authorization)); | ||||
|         if (!Cache::has($authorization)) { | ||||
|             if (!isset($authData[1]) || !isset($authData[0])) abort(403, '鉴权失败,请重新登入'); | ||||
|             $user = \App\Models\User::where('password', $authData[1]) | ||||
|                 ->where('email', $authData[0]) | ||||
|                 ->select([ | ||||
|                     'id', | ||||
|                     'email', | ||||
|                     'is_admin', | ||||
|                     'is_staff' | ||||
|                 ]) | ||||
|                 ->first(); | ||||
|             if (!$user) abort(403, '鉴权失败,请重新登入'); | ||||
|             Cache::put($authorization, $user->toArray(), 3600); | ||||
|         } | ||||
|         $user = AuthService::decryptAuthData($authorization); | ||||
|         if (!$user) abort(403, '未登录或登陆已过期'); | ||||
|         $request->merge([ | ||||
|             'user' => Cache::get($authorization) | ||||
|             'user' => $user | ||||
|         ]); | ||||
|         return $next($request); | ||||
|     } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user