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

相关推荐
伊信几秒前
Spring AI 基础学习与应用
java·后端
夜郎king7 分钟前
基于 Java + Playwright 实现网站自动访问与数据采集(以腾讯云开发者社区为例)
java·playwright·网页数据获取
Anastasiozzzz12 分钟前
重新定义 Agent 基建:Redis 在现代 AI 与智能体系统中的工程实践
java·人工智能·redis·ai
careathers14 分钟前
【数据结构】队列
java·数据结构
步行cgn18 分钟前
Spring 通过 factory-method 实例化 Bean 详解与常见错误排查
java·后端
lv__pf19 分钟前
seata【实战 msb】
java·开发语言·后端
Ricon组态薄荷糖20 分钟前
Ricon组态系统:工业组件开发指南与实践
前端·后端·物联网
旺仔不是程序员22 分钟前
相关子查询与性能优化:PostgreSQL 逐行执行的代价与 JOIN 重写
数据库·后端·sql
右耳朵猫AI27 分钟前
PHP周刊2026W38 | Laravel AI可观测、Symfony三版本、Webhook零信任、事件溯源架构
后端·php·laravel
沙蒿同学36 分钟前
我把架构约定编译成了会变红的测试:Wails v2 + Go + Vue3 桌面脚手架实战
前端·后端·github