diff --git a/server/app/adminapi/http/middleware/AuthMiddleware.php b/server/app/adminapi/http/middleware/AuthMiddleware.php index 2808a1026f41e7e06b029d0ce130deb880f3b6d8..5a06051f22405bbf9268b4240a2fc1ea5a1f8625 100644 --- a/server/app/adminapi/http/middleware/AuthMiddleware.php +++ b/server/app/adminapi/http/middleware/AuthMiddleware.php @@ -18,7 +18,8 @@ namespace app\adminapi\http\middleware; use app\common\{ cache\AdminAuthCache, - service\JsonService + service\JsonService, + service\ConfigService }; use think\helper\Str; @@ -44,7 +45,9 @@ class AuthMiddleware return $next($request); } - if ($request->adminInfo['login_ip'] != request()->ip()) { + //判断管理员IP是否变动 + $loginip_check = ConfigService::get('admin_login', 'loginip_check'); + if ($loginip_check && $request->adminInfo['login_ip'] != request()->ip()) { return JsonService::fail('ip地址发生变化,请重新登录', [], -1); } diff --git a/server/app/adminapi/validate/auth/AdminValidate.php b/server/app/adminapi/validate/auth/AdminValidate.php index 53b80e6921419bc846d04e72e0dcac33a4208f10..5592ad4f38a96496aa73e1586163cad10c3c6c03 100644 --- a/server/app/adminapi/validate/auth/AdminValidate.php +++ b/server/app/adminapi/validate/auth/AdminValidate.php @@ -62,7 +62,7 @@ class AdminValidate extends BaseValidate */ public function sceneAdd() { - return $this->remove(['password', 'edit']) + return $this->remove('password', 'edit') ->remove('id', true) ->remove('disable', true); } diff --git a/server/config/project.php b/server/config/project.php index 8e6d8cffa1b20aea2d930b9ffc660be964745a87..d0c26c37dec447269281b144a86dc7b60b74964c 100644 --- a/server/config/project.php +++ b/server/config/project.php @@ -26,6 +26,8 @@ return [ 'password_error_times' => 5, // 限制禁止多少分钟不能登录 'limit_login_time' => 30, + //是否开启IP变动检测 + 'loginip_check' => false, ], // 唯一标识,密码盐、路径加密等