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 给前端时 自动脱敏
  • 日志打印时脱敏
  • 业务代码里拿到的还是真实值,不影响逻辑

相关推荐
程序猿大帅2 小时前
记一次线上翻车:加了Redisson分布式锁,数据还是被并发打穿了
后端
weixin_704266052 小时前
项目总结一
java·前端·spring boot·后端·spring
JimmtButler2 小时前
一台电脑,两个 Git 身份:公司 GitLab + 个人 GitHub 共存
后端
全栈王校长2 小时前
Nest 中间件 Middleware - 就像 Vue 的路由守卫
后端·nestjs
无巧不成书02182 小时前
Java 21 LTS 高级特性零基础通关:静态导入、项目目录规范、泛型全实战
java·开发语言·标准目录结构·泛型原理·类型安全实现
敖正炀2 小时前
AQS-模板方法
java
橘子编程2 小时前
Hermes Agent 完整知识总结与使用教程
java·人工智能·ai·tomcat·maven·ai编程
全栈王校长2 小时前
Nest ValidationPipe 参数验证 - 就像前端的表单校验
后端·nestjs
沃尔威武2 小时前
Spring Cloud Gateway实战:微服务API网关从零到一
java·spring·微服务