首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java 实现日志脱敏处理

引言 在日常工作中,日志处理是我们每一个程序员必备的素质,但是在有些场景下客户信息敏感,需要进行某些字段,或者某部分字段的脱敏处理。接到需求我们开始操刀!...实现第一版 由于在RPC调用过程当中,大部分接口的参数封装数据类型都是Map,所以在此先针对Map形式实现日志脱敏功能 实现思路: 有两种实现方法: 第一种:写死配置 第二种:使用注解驱动 由于写死配置的扩展性实在是差...实现第二版 由于在RPC调用过程当中,大部分接口的参数封装数据类型都是Map,但是部分接口还是使用Java Bean所以在此针对Java Bean形式实现日志脱敏功能 实现思路: 根据不同的数据类型进行不同判断...,屏蔽上层调用者的可见度,在底层动态实现分情况处理 在结果处理完之后,统一返回调用者序列化完成的数据信息 在第一版实现的基础之上,我们开始第二版的实现 添加实体类 主要是为了封装模拟RPC调用过程中参数实体的属性...(person); System.out.println("脱敏后:" + converent2); } 第二版实现测试结果 针对Map实现脱敏结果 脱敏前:{certNo=

3.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

用户敏感信息展示脱敏

业务需求 将用户敏感信息脱敏展示到前端是出于保护用户隐私和信息安全的考虑。 敏感信息包括但不限于手机号码、身份证号、银行卡号等,这些信息泄露可能导致用户个人信息的滥用、身份盗用等严重问题。...脱敏是一种常用的保护用户隐私的方式,它的目的是减少潜在的风险,同时保持一定的用户信息可读性。 比如咱们在选择用户信息以及展示选座信息时,用户证件号码的脱敏展示。...为此,我想是否存在一种更为轻量级的脱敏技术实现?在网上搜索后,找到了一种比较符合我预期的实现方案:Jackson序列化方案。...代码实现 定义手机号和证件号的 Jackson 自定义序列化器,并在对应需要脱敏的敏感字段上指定自定义序列化器。 1、身份证号序列化器。...扩展思考 对接前端的敏感数据脱敏展示功能做到上面这些就已经实现了。但是总感觉哪里不对 举个例子 :在购票服务中,下单接口会调用乘车人详细信息接口获取到手机号、证件号等信息保存入库。

38220

python实现数据的脱敏

背景上一篇文章讲到了《一个注解,实现数据脱敏》,其实用起来还是相当的方便。那shigen是一个喜欢倒腾的人,对于python的接口,如何实现数据的脱敏呢?...我找了很久的教程,发现关于这部分的资料并不多,而且大部分的都是手写脱敏算法的。最终我也妥协了,我使用的是正则表达式实现数据的脱敏。...本文中,将使用flask+faker实现一个接口,再用正则表达式加工一下,它返回脱敏后的随机数据。...代码实现定义一个通用的正则表达式匹配工具实现的是将符合规则的数据变成脱敏之后的数据图片不得不说,还是很考验正则表达式的功底的,但是shigen的这个还是可以做到通用的,建议拿来就用。...:图片图片总结以上就是《python实现数据脱敏》的全部内容了,觉得不错的伙伴记得点赞 在看 关注 分享哈,你的鼓励是shigen不断更新的动力。

32430

你还不会搞数据脱敏?MyBatis 插件 + 注解轻松实现数据脱敏,So easy~!

问题 在项目中需要对用户敏感数据进行脱敏处理,例如身份号、手机号等信息进行加密再入库。...上层业务调用不再需要考虑数据的加敏同时也保证了数据的加解密 Mybatis 插件原理 Mybatis 的是通过拦截器实现的,Mabatis 支持对当事人进行拦截 实现 设置对参数中带有敏感参数字段的数据时进行加密...另外,如果你近期准备面试跳槽,建议在Java面试库小程序在线刷题,涵盖 2000+ 道 Java 面试题,几乎覆盖了所有主流技术面试题。...; import java.lang.reflect.Field; import java.util.Arrays; import java.util.Objects; import java.util.Random...; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Parameter

1.7K30

Spring Boot实现数据加密脱敏:注解 + 反射 + AOP

数据加密和脱敏的需求 3. Spring Boot项目初始化 4. 敏感数据加密注解设计 5. 实现加密和脱敏的工具类 6. 实体类和加密脱敏注解的使用 7. 利用AOP实现加密和脱敏 8....总结 Spring Boot实现数据加密脱敏:注解 + 反射 + AOP ---- 1. 引言 随着信息安全的日益重要,对敏感数据进行加密和脱敏已成为业务开发中不可忽视的一环。...数据加密和脱敏的需求 在实际应用中,我们常常需要对一些敏感数据进行保护,以防止敏感信息泄露。...数据加密用于将原始数据进行加密,使得即便数据被非法获取,也难以解密;而数据脱敏则是在数据显示时对敏感信息进行掩盖,确保展示给用户的数据不包含真实的敏感信息。 3....实现加密和脱敏的工具类 创建一个工具类 SensitiveDataUtils,用于实现对敏感数据的加密和脱敏操作。

47610

一个注解,实现数据的脱敏

---今天的话题是:一个注解实现业务数据脱敏。背景我们在开发的过程中,或者说再用一些类似某宝、某东的时候,发现个人信息的电话是这样的:123****7890,其实主要的目的还是为了实现数据的安全。...图片其实就是结合hutool的工具类实现在json序列化的时候,改变一下string的格式。这样就一个注解实现了格式化的通用。...OK,那能不能继续往下思考一下,实现一个通用的工具类,包括各种类型的数据脱敏呢?安排上!...图片图片请求接口,看到的数据就是这样的:图片这就巧妙的实现了数据的脱敏,也感谢hutool工具类的支持和大神蜗牛提供的解决方案。...代码也在shigen的gitee上:数据脱敏,需要源代码的伙伴可以去看看。---以上就是《一个注解,实现数据脱敏》的全部内容了。与**shigen**一起,每天不一样!

26051

敏感数据,实现“一键脱敏”!

来源:sourl.cn/uLCCPw 在真实业务场景中,数据库中经常需要存储某些客户的关键性敏感信息如:身份证号、银行卡号、姓名、手机号码等,此类信息按照合规要求,通常需要实现加密存储以满足合规要求。...痛点二 对于一些为了快速上线而一开始没有实现合规脱敏的系统,如何比较快速的使得已有业务满足合规要求的同时,尽量减少对原系统的改造。...通常的这个过程至少包括: 新增脱敏列的存储 同时做数据迁移 业务的代码做兼容逻辑等 Apache ShardingSphere下面存在一个数据脱敏模块,此模块集成的常用的数据脱敏的功能。...其基本原理是对用户输入的SQL进行解析拦截,并依靠用户的脱敏配置进行SQL的改写,从而实现对原文字段的加密及加密字段的解密。最终实现对用户无感的加解密存储、查询。...脱敏配置Quick Start——Spring版 以下介绍基于Spring如何快速让系统支持脱敏配置。 1. 引入依赖 <!

1.9K20

如何使用Sentry实现HiveImpala的数据脱敏

Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 本文主要描述如何使用Sentry实现数据的脱敏...灵活的数据脱敏方案应该是底层数据真实的值没有被脱敏,当有用户查询数据时则判断是否屏蔽,取决于用户的具体权限。我们可以使用Sentry控制视图的权限来实现数据脱敏。...本文Fayson会以一个简单的实操例子来介绍如何使用Sentry实现Hive/Impala的数据脱敏。...regexp_replace()函数通过正则表达式的方式敏感数据屏蔽,也可以通过自定义的UDF函数来等方式来实现敏感数据脱敏。...通过脱敏SQL创建视图,使用Sentry权限控制将脱敏数据的视图提供给不同的用户访问 授权访问视图(即使授权ALL)的用户也无权限访问相应表的底层数据文件。

3K60

教你用Java字节码做日志脱敏工具

它把Java的instrument功能从本地代码中解放出来,使之可以用 Java 代码的方式解决问题。java.lang.instrument是在JVM TI的基础上提供的Java版本的实现。...2.1.2 自定义 打算通过注解进行自定义脱敏,@DesFiled进行标记要脱敏的field,@Desenstized进行标记脱敏的类,通过继承一个basefilter进行脱敏的扩展。...{ } 还有我们的脱敏的filter接口,以及他的实现类用于手机号field的脱敏,其实也就是转换: public interface BaseDesFilter { default T...第二张图是需要先获取到脱敏方法的引用然后传入this.name进行脱敏。 这下我们就知道自己需要做的了,这个时候其实完全不需要看接下来的细节了,可以自己去尝试一下,看看是如何去实现。...Opcodes.ASM5, av, this.info); return avAdapter; } } 通过重写了visitAnnotation,进行判断来获取是否有DesFiled注解以及注解上的信息

1.5K61

一个注解,实现数据脱敏-plus版

shigen坚持日更的博客写手,擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。坚持记录和分享从业两年以来的技术积累和思考,不断沉淀和成长。...背景 在shigen之前的文章一个注解,实现数据脱敏中,有一位读者提到了一个优化项目,优化代码参考: 正巧这是个周末,我再次对我的代码根据这个优化项目优化了一下,代码地址在这里,感兴趣的伙伴可以去看看。...区别于代码案例的作者,这里定义了Customer类型的脱敏实现用户自定义隐藏字符。...SensitiveJsonSerializer 这里定义的方法和上一版本的基本一致,从注解中获得参数的值,然后调用在枚举中的方法,实现数据的脱敏。 使用 在使用上和之前的也没什么区别。

16640

Java 日志数据脱敏方案,真的很给力

---- 许多系统为了安全需要对敏感信息(如手机号、邮箱、姓名、身份证号、密码、卡号、住址等)的日志打印要求脱敏后才能输出,本文将结合个人经历及总结分享一种log4j日志脱敏方式。...org.apache.logging.log4j.core.layout.PatternLayout; import org.apache.logging.log4j.core.pattern.RegexReplacement; import java.nio.charset.Charset... replaces);     }       @Override     public String toSerializable(LogEvent event) {         // 原日志信息...:{}", user);     //json     logger.infoMessage("用户信息:{}", JSONUtil.toJsonStr(user)); } log.test.LogTest...'股份有限公司', address='浙江省****', tel='0571-12****78', position=[需求, 开发, 测试, 上线]}} log.test.LogTest : 用户信息

2.3K20

我用注解优雅的实现了数据的脱敏

根据数据保护规范和脱敏策略.对业务数据中的敏感信息实施自动变形.实现对敏感信息的隐藏。...但这里有个问题这里我们调用了getUserInfo()后,采用了大量的代码去专门处理脱敏数据,而实际上我们只是要获取userInfo的信息而已,为此我决定采用注解的形式,将数据进行数据脱敏即可。...3代码实现 我们先列出数据脱敏的类型 上面为我们需要脱敏的数据枚举。...(s, jsonGenerator)数据脱敏的方法,这个方法根据不同的枚举类型实现对应的数据脱敏。...然后我们还要重写createContextual()方法,这里面实现的功能就是扫描脱敏注解然后实现各自的数据脱敏。 接下来我们定义脱敏注解。 这个value()是我们传入的类型枚举。

1.9K21

一个注解优雅的实现 接口数据脱敏

通常接口返回值中的一些敏感数据也是要脱敏的,比如身份证号、手机号码、地址.....通常的手段就是用*隐藏一部分数据,当然也可以根据自己需求定制。 言归正传,如何优雅的实现呢?...有两种实现方案,如下: 整合Mybatis插件,在查询的时候针对特定的字段进行脱敏 整合Jackson,在序列化阶段对特定字段进行脱敏 基于Sharding Sphere实现数据脱敏,查看之前的文章:基于...Sharding Sphere实现数据“一键脱敏” 第一种方案网上很多实现方式,下面演示第二种,整合Jackson。...定制JSON序列化实现 下面将是重要实现,对标注注解@Sensitive的字段进行脱敏实现如下: /** * 序列化注解自定义实现 * JsonSerializer:指定String...总结 数据脱敏有很多种实现方式,关键是哪种更加适合,哪种更加优雅.....

42020

信息泄露渠道及风险感知;数据脱敏规则探讨 | FB甲方群话题讨论

| FB甲方群话题讨论 本期话题抢先看 1.大规模信息泄露,除了被拖库,是否还有其他获取渠道,企业如何增强数据泄露风险的感知? 2. 数据脱敏一般规则可以如何制定? 3....3、深化梳理数据处理流程,从数据产生到数据销毁的全流程进行管控,针对可能产生数据泄露的环节和控制点进行监控,实现自动化告警,及时响应告警。...A15: 数据资产梳理起来就很困难,公司没有任何一个人能说清楚各个应用系统所涉及的数据信息,我们讨论分级分类的依据和怎么分就是一大难点。  话题二  数据库脱敏会不会产生对重要数据进行破坏的可能?...、合生 信息安全负责人、航天产业投资基金IT负责人、工银金融 信息安全负责人、前海联合基金 信息安全负责人、天弘基金 安全负责人、阳光保险 信息安全部负责人、南京证券 安全负责人、宝马金融 信息安全经理...、诺亚控股 业务安全中心总监、哥伦比亚中国 信息安全总监非夕科技信息安全总监、赫基国际 信息安全部负责人、熵通科技 信息安全负责人、建发集团 信息安全经理  其他:大学长教育 数据安全与合规总监、温州城市大学

69530

学一招,利用MySQL函数实现数据脱敏

前言 一 什么是数据脱敏? 二 姓名脱敏小案例 2.1 定长脱敏 2.2 非定长脱敏 三 函数释义 前言 大家好,我是麦洛,前几天项目中用到了姓名脱敏,要保留头和尾,中间填充不定数量的'*'。...数据脱敏(Data Masking),顾名思义,是屏蔽敏感数据,对某些敏感信息(比如,身份证号、手机号、卡号、客户姓名、客户地址、邮箱地址、薪资等等 )通过脱敏规则进行数据的变形,实现隐私数据的可靠保护...业界常见的脱敏规则有,替换、重排、加密、截断、掩码,用户也可以根据期望的脱敏算法自定义脱敏规则。...img 二 姓名脱敏小案例 2.1 定长脱敏 所谓定长脱敏,就是替换的'*'的长度固定,效果如下图所示 SELECT CONCAT( LEFT ( real_name, 1 ), '*', RIGHT...( real_name, CHAR_LENGTH( real_name )- 2 ) ) AS username FROM sys_user; 2.2 非定长脱敏 所谓非定长脱敏,就是替换的'

2.2K20
领券