Spring boot注解实现信息脱敏

Spring boot注解实现信息脱敏

@Mask(MaskType.USER) 就是对你字段里的用户名/账号脱敏显示


作用

java 复制代码
@Mask(MaskType.USER)
private String username;

效果一般是:

  • 用户名:张三张*
  • 用户名:张三丰张*丰
  • 用户名:li_sil**i
  • 用户名:wangwuw***u

规则通常是:
只显示第一个字符 + 最后一个字符,中间用 * 掩盖


常见 MaskType 全家桶

你项目里大概率还有这些:

java 复制代码
@Mask(MaskType.PHONE)    // 手机:138****1234
@Mask(MaskType.USER)     // 用户名:张*三、李*
@Mask(MaskType.ID_CARD)  // 身份证:110***********1234
@Mask(MaskType.EMAIL)    // 邮箱:t***t@qq.com
@Mask(MaskType.BANK_CARD)// 银行卡:6222********1234

它什么时候生效?

  • 接口返回 JSON 给前端时 自动脱敏
  • 日志打印时脱敏
  • 业务代码里拿到的还是真实值,不影响逻辑

相关推荐
咖啡八杯9 分钟前
GoF设计模式——享元模式
java·spring·设计模式·享元模式
十五喵源码网15 分钟前
基于springboot2+vue2的租房管理系统
java·毕业设计·springboot·论文笔记
摇滚侠16 分钟前
IDEA 创建 Java 项目 手动整合 SSM 框架
java·ide·intellij-idea
源分享17 分钟前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Flittly24 分钟前
【AgentScope Java新手村系列】(10)实战-多Agent天气助手
java·spring boot·spring
张不才31 分钟前
一个静默吞数据的时间戳陷阱
后端
李少兄32 分钟前
从原理到实战:Spring IoC/DI 核心知识体系与高频面试题全解
java·后端·spring
ServBay35 分钟前
ServBay 1.30.0 更新:双平台引入 MCP 服务,AI 编程助手成为全栈本地运维
后端·ai编程
飞天狗1111 小时前
零基础JavaWeb入门——第五课第二小节:九大内置对象 · 第2个:response(响应对象)
java·开发语言
张不才1 小时前
分页查出来的数据总少几条?可能是 MyBatis 后置过滤的坑
后端