Kaynağa Gözat

更新后台密码策略

sandm 3 yıl önce
ebeveyn
işleme
da069051cf

+ 11 - 3
libs/repositories/laravel-admin/src/Controllers/AuthController.php

@@ -61,7 +61,7 @@ class AuthController extends Controller
             $credentials,
             [
                 $this->username()   => 'required',
-                'password'          => 'required|min:8|regex:/^.*(?=.{3,})(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[\d\X])(?=.*[!$#%]).*$/',
+                'password'          => 'required|min:8|regex:/(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[\W_]).{8,}/',
             ],
             [
                 $this->username().'required'   => '请输入用户名',
@@ -80,9 +80,17 @@ class AuthController extends Controller
             return $this->sendLockoutResponse($request);
         }
 
-
         if ($this->guard()->attempt($credentials, $remember)) {
-            return $this->sendLoginResponse($request);
+            $user = Admin::user();
+            $time = strtotime($user->updated_at);
+            if((time()-$time)>7776000){
+                $this->guard()->logout();
+                return back()->withInput()->withErrors([
+                    $this->username() => '您的密码已过期,请联系技术员重置密码',
+                ]);
+            }else{
+                return $this->sendLoginResponse($request);
+            }
         }
 
         $this->incrementLoginAttempts($request);