From b207fe04226e921e2b834a8162ef38947de431b4 Mon Sep 17 00:00:00 2001
From: 刘帅 <rr.iii@qq.com>
Date: 星期一, 28 九月 2026 17:45:09 +0800
Subject: [PATCH] 注释优化

---
 cloud-server-gateway/src/main/java/cn/mb/cloud/gateway/filter/SensitiveDataMaskingGlobalFilter.java |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/cloud-server-gateway/src/main/java/cn/mb/cloud/gateway/filter/SensitiveDataMaskingGlobalFilter.java b/cloud-server-gateway/src/main/java/cn/mb/cloud/gateway/filter/SensitiveDataMaskingGlobalFilter.java
index c5e5003..0cea2ac 100644
--- a/cloud-server-gateway/src/main/java/cn/mb/cloud/gateway/filter/SensitiveDataMaskingGlobalFilter.java
+++ b/cloud-server-gateway/src/main/java/cn/mb/cloud/gateway/filter/SensitiveDataMaskingGlobalFilter.java
@@ -21,15 +21,16 @@
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-/** Final API boundary for APP traffic, including responses returned by every service. */
+/**
+ * APP 流量的最终接口边界,覆盖各服务返回的响应数据。
+ */
 @Component
 public class SensitiveDataMaskingGlobalFilter implements GlobalFilter, Ordered {
     private static final Pattern FIELD = Pattern.compile("(?i)(\\\"(?:[a-z]*phone|[a-z]*mobile|telephone|tel)\\\"\\s*:\\s*\\\")([^\\\"]*)(\\\")");
     private static final Pattern IDCARD = Pattern.compile("(?i)(\\\"(?:[a-z]*idcard|[a-z]*identitycard|identitynumber|idnumber)\\\"\\s*:\\s*\\\")([^\\\"]*)(\\\")");
     /**
-     * APP has to receive these values so it can apply its own display masking.
-     * Keep this list exact: all other routes continue to be protected at the
-     * gateway boundary.
+     * APP 需要获取原始数据后自行进行展示脱敏。
+     * 请保持此列表精确,其他路由仍由网关边界进行脱敏保护。
      */
     private static final Set<String> APP_UNMASKED_PATHS = new HashSet<String>(Arrays.asList(
             "/other/api/site/queryMySiteById",
@@ -44,9 +45,8 @@
 
     @Override public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
         String path = exchange.getRequest().getURI().getPath();
-        // /system/sensitive enforces its own admin check and audit.  The APP
-        // paths below deliberately return their original fields for client-side
-        // display masking; every other response remains gateway-masked.
+        // /system/sensitive 会自行完成管理员校验和审计。以下 APP 路径有意返回原始字段,
+        // 由客户端在展示时脱敏;其他所有响应仍由网关脱敏。
         if (path.startsWith("/system/sensitive/") || APP_UNMASKED_PATHS.contains(path)) return chain.filter(exchange);
         ServerHttpResponseDecorator decorated = new ServerHttpResponseDecorator(exchange.getResponse()) {
             @Override public Mono<Void> writeWith(Publisher<? extends DataBuffer> body) {

--
Gitblit v1.7.1