feat: balance change
This commit is contained in:
@@ -17,8 +17,8 @@ class Google2faController extends Controller
|
||||
$admin = auth('admin')->user();
|
||||
|
||||
return view('admin.security.google2fa', [
|
||||
'enabled' => (int) $admin->google_auth_open === 1,
|
||||
'bound' => filled($admin->google_secret),
|
||||
'enabled' => $admin->requiresLoginGoogle(),
|
||||
'bound' => $admin->hasGoogleBound(),
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -62,6 +62,7 @@ class Google2faController extends Controller
|
||||
$data = $request->validate([
|
||||
'GAKey' => ['required', 'string', 'max:16'],
|
||||
'GASecret' => ['required', 'string', 'max:64'],
|
||||
'login_verify' => ['nullable', 'integer', 'in:0,1'],
|
||||
], [
|
||||
'GAKey.required' => '请输入谷歌验证码',
|
||||
'GASecret.required' => '参数不完整',
|
||||
@@ -76,14 +77,20 @@ class Google2faController extends Controller
|
||||
return response()->json(['code' => 1, 'msg' => '绑定失败,验证码不正确']);
|
||||
}
|
||||
|
||||
$loginVerify = (int) ($data['login_verify'] ?? 0);
|
||||
$admin->forceFill([
|
||||
'google_auth_open' => 1,
|
||||
'google_auth_open' => $loginVerify,
|
||||
'google_secret' => $data['GASecret'],
|
||||
])->save();
|
||||
|
||||
$request->session()->forget('admin_google2fa_pending_secret');
|
||||
|
||||
return response()->json(['code' => 0, 'msg' => '绑定成功,下次登录将需要输入谷歌验证码']);
|
||||
return response()->json([
|
||||
'code' => 0,
|
||||
'msg' => $loginVerify === 1
|
||||
? '绑定成功,下次登录需要输入谷歌验证码'
|
||||
: '绑定成功。登录不校验谷歌验证码;查看助记词明文仍需验证',
|
||||
]);
|
||||
}
|
||||
|
||||
public function toggle(Request $request, AdminGoogle2fa $google2fa): JsonResponse
|
||||
@@ -106,18 +113,18 @@ class Google2faController extends Controller
|
||||
}
|
||||
|
||||
$open = (int) $data['open'];
|
||||
if ($open === 0) {
|
||||
$code = (string) ($data['GACode'] ?? '');
|
||||
if (! $google2fa->verify((string) $admin->google_secret, $code)) {
|
||||
return response()->json(['code' => 1, 'msg' => '谷歌验证码不正确']);
|
||||
}
|
||||
$code = (string) ($data['GACode'] ?? '');
|
||||
if (! $google2fa->verify((string) $admin->google_secret, $code)) {
|
||||
return response()->json(['code' => 1, 'msg' => '谷歌验证码不正确']);
|
||||
}
|
||||
|
||||
$admin->forceFill(['google_auth_open' => $open])->save();
|
||||
|
||||
return response()->json([
|
||||
'code' => 0,
|
||||
'msg' => $open === 1 ? '已开启谷歌验证' : '已关闭谷歌验证',
|
||||
'msg' => $open === 1
|
||||
? '已开启登录谷歌验证'
|
||||
: '已关闭登录谷歌验证(绑定仍保留,查看助记词仍需验证)',
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user