|
|
@@ -4,6 +4,7 @@ namespace backendApi\modules\v1\models;
|
|
|
use common\components\Model;
|
|
|
use common\helpers\LoggerTool;
|
|
|
use common\helpers\Tool;
|
|
|
+use common\libs\IpFilter;
|
|
|
use common\libs\LoginIpChecker;
|
|
|
use Yii;
|
|
|
use yii\base\Exception;
|
|
|
@@ -119,12 +120,18 @@ class LoginForm extends Model {
|
|
|
AdminLoginLogger::fail(['FAIL_NUMS' => 0, 'ADMIN_NAME' => $this->adminName, 'LOGIN_NUMS' => 1], '账号不存在', $this->password);
|
|
|
throw new Exception('用户名或者密码错误');
|
|
|
}
|
|
|
- // 登陆IP限制
|
|
|
+ // 验证IP
|
|
|
$loginIp = $_SERVER['REMOTE_ADDR'];
|
|
|
- if (!Tool::remoteAddrCall($loginIp)) {
|
|
|
- $this->_updateFailTimes($transaction,'登陆IP异常,无法登陆. ' . $loginIp);
|
|
|
- throw new Exception('用户名或者密码错误');
|
|
|
+ if (\Yii::$app->redis->get('backend_ip_filter') && !(new IpFilter())->frontApiCheck('backend', true)) {
|
|
|
+ $this->_updateFailTimes($transaction, '登陆IP异常,无法登陆. ' . $loginIp);
|
|
|
+ throw new Exception('用户名或密码错误');
|
|
|
}
|
|
|
+// // 登陆IP限制
|
|
|
+// $loginIp = $_SERVER['REMOTE_ADDR'];
|
|
|
+// if (!Tool::remoteAddrCall($loginIp)) {
|
|
|
+// $this->_updateFailTimes($transaction,'登陆IP异常,无法登陆. ' . $loginIp);
|
|
|
+// throw new Exception('用户名或者密码错误');
|
|
|
+// }
|
|
|
// 失败次数到达上限次数
|
|
|
$loginFailNums = Yii::$app->redis->get('FAIL_NUMS:' . $this->adminName) ?? 0;
|
|
|
if ($loginFailNums >= 3) {
|