当前位置: 首页 > article >正文

java springBoot项目实现数据脱敏的策略

        在实际的软件开发中,保护用户隐私数据是非常重要的。在Java Spring Boot项目中,通常需要对敏感数据进行脱敏处理,以确保数据安全性。本文将介绍几种常见的数据脱敏策略,并提供相应的实现方式和示例代码。

        1、使用Hutool工具类进行处理。

示例代码:

import cn.hutool.core.util.StrUtil;

public class User {

    private String idNumber;
    private String name;
    private String phone;

    @Override
    public String toString() {
        return "User{" +
                "idNumber='" + StrUtil.hide(idNumber, 1, 4) + '\'' +
                ", name='" + name + '\'' +
                ", phone='" + StrUtil.hide(phone, 3, 7) + '\'' +
                '}';
    }
}

        在上面的代码中,我们在toString()方法中使用了Hutool的StrUtil工具类提供的hide()方法对身份证号码和手机号码进行了脱敏处理。其中,hide()方法的第一个参数是需要脱敏的字符串,第二个参数是脱敏开始的位置,第三个参数是脱敏结束的位置。 

        2、使用sql语句进行数据的脱敏。

示例代码:

-- CONCAT()、LEFT()和RIGHT()字符串函数组合使用,请看下面具体实现
 
-- CONCAT(str1,str2,…):返回结果为连接参数产生的字符串
-- LEFT(str,len):返回从字符串str 开始的len 最左字符
-- RIGHT(str,len):从字符串str 开始,返回最右len 字符
 
-- 电话号码脱敏sql:
 
SELECT mobilePhone AS 脱敏前电话号码,CONCAT(LEFT(mobilePhone,3), '********' ) AS 脱敏后电话号码 FROM t_s_user
 
-- 身份证号码脱敏sql:
 
SELECT idcard AS 未脱敏身份证, CONCAT(LEFT(idcard,3), '****' ,RIGHT(idcard,4)) AS 脱敏后身份证号 FROM t_s_user
        3、 使用git中的开源插件,进行数据脱敏

git参考地址:点击此处跳转

        数据脱敏插件,目前支持地址脱敏、银行卡号脱敏、中文姓名脱敏、固话脱敏、身份证号脱敏、手机号脱敏、密码脱敏 一个是正则脱敏、另外一个根据显示长度脱敏,默认是正则脱敏,可以根据自己的需要配置自己的规则。

        4、使用mybatis-mate-sensitive-jackson包,进行数据脱敏

注意:这种方式对个人用户免费,商用收费。

官网快速入门地址:快速开始 | MyBatis-Plus


http://www.kler.cn/a/231019.html

相关文章:

  • qt QMessagbox的按钮的顺序
  • 洛谷_P5461 赦免战俘_python写法
  • Win32 SDK Gui编程系列之--ListView自绘OwnerDraw(续)
  • 黑马Java——集合进阶(List、Set、泛型、树)
  • C++服务器端开发(1):设计服务器架构
  • 使用python启动一个roslaunch文件
  • c#内置委托
  • 最新AI系统ChatGPT网站H5系统源码,支持Midjourney绘画局部编辑重绘,GPT语音对话+ChatFile文档对话总结+DALL-E3文生图
  • 对接快团团,如何快速高效对接快团团大团长?
  • 编程笔记 html5cssjs 075 Javascript 常量和变量
  • 使用 Visual Studio Code 在远程计算机上调试 PostgreSQL
  • FMECA实施步骤——FMEA软件
  • 2.5学习总结9
  • 电商数据采集:选择爬虫工具还是第三方API?
  • HarmonyOS 鸿蒙应用开发(十、第三方开源js库移植适配指南)
  • 构建中国人自己的私人GPT—支持中文
  • 机顶盒晶晨s905l3b芯片刷第三方系统+安卓9 root教程+armbian写入EMMC教程
  • CloudStack Agent重新安装与卸载指南
  • 【机器学习】机器学习流程之收集数据
  • 提升你的PHP开发效率:探索JetBrains PhpStorm 2022的全新特性