From f3fba4a2298c755a6552fb457ad16b769b02479f Mon Sep 17 00:00:00 2001 From: luoweijian <1329394916@qq.com> Date: Fri, 7 Aug 2026 15:15:13 +0800 Subject: [PATCH] =?UTF-8?q?fix(dict):=20clear=20client-supplied=20audit=20?= =?UTF-8?q?fields=20in=20saveGroup/saveItem=20=E2=80=94=20prevent=20strict?= =?UTF-8?q?Fill=20bypass=20forgery?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit saveGroup/saveItem accepted entity params whose createTime/creatorId/updaterId were not sanitized; MetaObjectFillHandler uses strictInsertFill/strictUpdateFill which only fills null fields, so client-supplied audit values were retained. Now: null out all audit fields on entry (framework refills), restore createTime/creatorId from exist on edit. --- .../com/crm/dict/service/impl/DictGroupServiceImpl.java | 9 +++++++++ .../com/crm/dict/service/impl/DictItemServiceImpl.java | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java b/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java index e431842..8144740 100644 --- a/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java +++ b/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java @@ -69,6 +69,12 @@ public class DictGroupServiceImpl extends BaseServiceImpl