From 4470052c3b6bdeb18e45987f8aa293d1e93d0552 Mon Sep 17 00:00:00 2001
From: Ludc <2870569285@qq.com>
Date: 星期二, 18 十一月 2025 11:59:12 +0800
Subject: [PATCH] 所有文件上传接口增加文件安全校验逻辑。
---
Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/utils/LogAbstractUtil.java | 71 +++++++++++++++++++++++++++++++++++
1 files changed, 71 insertions(+), 0 deletions(-)
diff --git a/Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/utils/LogAbstractUtil.java b/Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/utils/LogAbstractUtil.java
new file mode 100644
index 0000000..9e8b02e
--- /dev/null
+++ b/Source/BladeX-Tool/blade-starter-log/src/main/java/org/springblade/core/log/utils/LogAbstractUtil.java
@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 搴勯獮 (smallchill@163.com)
+ */
+
+package org.springblade.core.log.utils;
+
+import org.springblade.core.launch.props.BladeProperties;
+import org.springblade.core.launch.server.ServerInfo;
+import org.springblade.core.log.model.LogAbstract;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.utils.*;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * Log 鐩稿叧宸ュ叿
+ *
+ * @author Chill
+ */
+public class LogAbstractUtil {
+
+ /**
+ * 鍚憀og涓坊鍔犺ˉ榻恟equest鐨勪俊鎭�
+ *
+ * @param request 璇锋眰
+ * @param logAbstract 鏃ュ織鍩虹绫�
+ */
+ public static void addRequestInfoToLog(HttpServletRequest request, LogAbstract logAbstract) {
+ if (ObjectUtil.isNotEmpty(request)) {
+ logAbstract.setTenantId(Func.toStrWithEmpty(AuthUtil.getTenantId(), BladeConstant.ADMIN_TENANT_ID));
+ logAbstract.setRemoteIp(WebUtil.getIP(request));
+ logAbstract.setUserAgent(request.getHeader(WebUtil.USER_AGENT_HEADER));
+ logAbstract.setRequestUri(UrlUtil.getPath(request.getRequestURI()));
+ logAbstract.setMethod(request.getMethod());
+ logAbstract.setParams(WebUtil.getRequestContent(request));
+ logAbstract.setCreateBy(AuthUtil.getUserAccount(request));
+ }
+ }
+
+ /**
+ * 鍚憀og涓坊鍔犺ˉ榻愬叾浠栫殑淇℃伅锛坋g锛歜lade銆乻erver绛夛級
+ *
+ * @param logAbstract 鏃ュ織鍩虹绫�
+ * @param bladeProperties 閰嶇疆淇℃伅
+ * @param serverInfo 鏈嶅姟淇℃伅
+ */
+ public static void addOtherInfoToLog(LogAbstract logAbstract, BladeProperties bladeProperties, ServerInfo serverInfo) {
+ logAbstract.setServiceId(bladeProperties.getName());
+ logAbstract.setServerHost(serverInfo.getHostName());
+ logAbstract.setServerIp(serverInfo.getIpWithPort());
+ logAbstract.setEnv(bladeProperties.getEnv());
+ logAbstract.setCreateTime(DateUtil.now());
+ if (logAbstract.getParams() == null) {
+ logAbstract.setParams(StringPool.EMPTY);
+ }
+ }
+}
--
Gitblit v1.10.0