增加 @NoSensitive 注解

- 在 SysUser 实体类中为手机号码字段添加 @Sensitive 注解
- 新增 @NoSensitive 注解和相关切面、拦截器,用于 “关闭” 数据脱敏
- 在用户信息相关接口中添加 @NoSensitive 注解,以 “关闭” 数据脱敏
- 新增 WebMvcConfig 配置类,注册 NoSensitiveInterceptor 拦截器
This commit is contained in:
ayi
2025-07-07 11:10:52 +08:00
parent e549210ad6
commit 2622d9147e
13 changed files with 176 additions and 2 deletions

View File

@@ -10,6 +10,7 @@ import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.ser.ContextualSerializer;
import com.ruoyi.common.core.constant.UserConstants;
import com.ruoyi.common.core.context.SecurityContextHolder;
import com.ruoyi.common.core.context.SensitiveContextHolder;
import com.ruoyi.common.sensitive.annotation.Sensitive;
import com.ruoyi.common.sensitive.enums.DesensitizedType;
@@ -25,7 +26,7 @@ public class SensitiveJsonSerializer extends JsonSerializer<String> implements C
@Override
public void serialize(String value, JsonGenerator gen, SerializerProvider serializers) throws IOException
{
if (desensitization())
if (desensitization() && !SensitiveContextHolder.isNoSensitiveScope())
{
gen.writeString(desensitizedType.desensitizer().apply(value));
}