From 3931ca7fbdfdfe9affb72cde71c94516993af046 Mon Sep 17 00:00:00 2001 From: Suwings Date: Sun, 27 Feb 2022 12:25:33 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20=E9=9D=A2=E6=9D=BF?= =?UTF-8?q?=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 4 ++-- src/app/service/passport_service.ts | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 78abb47..a6cb907 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "mcsmanager-panel", - "version": "9.3.0", - "daemonVersion": "1.4.0", + "version": "9.3.2", + "daemonVersion": "1.4.2", "description": "Distributed clustering, groupable, lightweight and out-of-the-box Minecraft server management panel", "scripts": { "dev": "nodemon app.js", diff --git a/src/app/service/passport_service.ts b/src/app/service/passport_service.ts index 7d24a49..153a053 100644 --- a/src/app/service/passport_service.ts +++ b/src/app/service/passport_service.ts @@ -24,6 +24,7 @@ import userSystem from "./system_user"; import { timeUuid } from "./password"; import GlobalVariable from "../common/global_variable"; import { systemConfig } from "../setting"; +import { logger } from "./log"; export const BAN_IP_COUNT = "banip"; export const LOGIN_FAILED_KEY = "loginFailed"; @@ -34,11 +35,11 @@ export const LOGIN_FAILED_COUNT_KEY = "loginFailedCount"; export function login(ctx: Koa.ParameterizedContext, userName: string, passWord: string): string { // 记录登录请求次数 GlobalVariable.set(LOGIN_COUNT, GlobalVariable.get(LOGIN_COUNT, 0) + 1); + const ip = ctx.socket.remoteAddress; // 进行用户信息检查 if (userSystem.checkUser({ userName, passWord })) { // 登录成功后重置此IP的错误次数 const ipMap = GlobalVariable.get(LOGIN_FAILED_KEY); - const ip = ctx.socket.remoteAddress; delete ipMap[ip]; // 会话 Session 状态改变为已登陆 const user = userSystem.getUserByUserName(userName); @@ -48,6 +49,8 @@ export function login(ctx: Koa.ParameterizedContext, userName: string, passWord: ctx.session["uuid"] = user.uuid; ctx.session["token"] = timeUuid(); ctx.session.save(); + logger.info(`[Logined Event] IP: ${ip} 成功登录账号 ${userName}`); + logger.info(`Token: ${ctx.session["token"]}`); return ctx.session["token"]; } else { // 记录登录失败次数 @@ -55,6 +58,7 @@ export function login(ctx: Koa.ParameterizedContext, userName: string, passWord: ctx.session["login"] = null; ctx.session["token"] = null; ctx.session.save(); + logger.info(`[Logined Event] IP: ${ip} 登录账号 ${userName} 失败`); return null; } }