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

Java 实现日志脱敏处理

需求分析 处理字段的方式多种多样,如何方便,高效才是关键,众所周知在java中最好的处理方式就是封装,即,对程序员暴露出的最好是一个统一的API,不关心具体的处理逻辑,能拿到想要的返回值就好。...实现第二版 由于在RPC调用过程当中,大部分接口的参数封装数据类型都是Map,但是部分接口还是使用Java Bean所以在此针对Java Bean形式实现日志脱敏功能 实现思路: 根据不同的数据类型进行不同判断...(person); System.out.println("脱敏后:" + converent2); } 第二版实现测试结果 针对Map实现的脱敏结果 脱敏前:{certNo=...,"custName":"小*儿"} 针对Object实现的脱敏结果 脱敏前:Person{custName='小妮儿真可爱!'...完整代码请参考Github https://github.com/dwyanewede/project-learn/tree/master/src/main/java/com/learn/demo/desensitization

3.5K30

数据脱敏——基于Java自定义注解实现日志字段脱敏

要对数据进行脱敏,基本上都是对一些关键的、少数字段进行脱敏,比如某个实体中可能只对password这一个字段进行脱敏处理,所以可以用自定义注解的方式,只需在需要脱敏的字段上添加一个注解,比较方便。   ...核心代码: 定义用于标识脱敏字段的注解 Desensitized.java @Target({ElementType.FIELD, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME...(); /*判断注解是否生效的方法*/ String isEffictiveMethod() default ""; } 脱敏类型 SensitiveTypeEnum.java public...DesensitizedUtils.java public class DesensitizedUtils { /** * 获取脱敏json串 * * @param...——基于Java自定义注解实现日志字段脱敏》】

6.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    聊聊如何自定义数据脱敏

    前言 什么是数据脱敏 数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护 常用脱敏规则 替换、重排、加密、截断、掩码 良好的数据脱敏实施 1、尽可能地为脱敏后的应用,保留脱敏前的有意义信息...2、最大程度地防止黑客进行破解 今天我们聊聊如何自定义数据脱敏 整体思路 本示例通过替换的手段实现脱敏,然后配合常用的框架特性,比如mybatis的拦截器机制或者json的序列化来快速实现脱敏 具体落地...1、定义一个脱敏工具类 可以直接引用hutool工具包,不过它在5.6+版本以上才提供了这个工具 https://www.hutool.cn/docs/#/core/工具类/信息脱敏工具-DesensitizedUtil...;可以脱敏:用户id、中文名、身份证号、座机号、手机号、地址、电子邮件、密码 * @return 脱敏之后的字符串 * @author dazer and neusoft and qiaomu...它的实现原来其实就是在json进行序列化渲染给前端时,进行脱敏

    1.7K20

    如何对数据进行脱敏处理?

    如果需要脱敏的数据范围很小很小,甚至就是指定的字段,一般的处理方式也很简单,就是写一个隐藏方法即可实现数据脱敏。 如果是需求很少的情况下,采用这种方式实现没太大问题,好维护!...那么问题来了,如何在序列化的时候,进行数据脱敏处理呢? 废话不多说,代码直接撸上!...; import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) @JacksonAnnotationsInside...; import java.util.Objects; public class SensitiveSerialize extends JsonSerializer implements...StringUtils.left(code, 2), StringUtils.length(code), "*"); } } 2.5、编写测试实体类 最后,我们编写一个实体类UserEntity,看看转换后的效果如何

    3.7K20

    数据脱敏

    本文将深入探讨数据脱敏的概念、法律依据、脱敏技术,以及在业务中的应用场景。 什么是数据脱敏?...信息安全技术个人信息脱敏规范 由国家信息安全标准化技术委员会颁布的《信息安全技术个人信息脱敏规范》为数据脱敏提供了详细的技术规范和操作指南,对企业在实施数据脱敏时提供了标准化的指导。...数据脱敏技术 替换 替换是一种基础而有效的脱敏技术。通过将敏感数据替换为虚拟数据,例如将真实姓名替换为“用户A”,以达到保护隐私的目的。...原始数据:真实基因序列 脱敏后数据:模拟基因序列 随机化 随机化是通过引入随机元素,对数据进行随机变换,增加了数据的多样性,提高了脱敏的效果。...原始数据:用户地址 脱敏后数据:随机生成的地址 数据脱敏的业务应用场景 金融行业 在金融领域,客户的个人信息和交易数据极为敏感。

    57110

    数据脱敏——什么是数据脱敏

    ---- 数据脱敏(Data Masking),又称数据漂白、数据去隐私化或数据变形。 百度百科对数据脱敏的定义为:指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。...生活中不乏数据脱敏的例子,比如我们最常见的火车票、电商收货人地址都会对敏感信息做处理,甚至女同志较熟悉的美颜、有些视频中的马赛克都属于脱敏。 ? 二、为什么要进行数据脱敏?...三、如何实现数据脱敏 ---- 按照脱敏规则,可以分为可恢复性脱敏和不可恢复性脱敏。...我们目前遇到的场景是日志脱敏,即在把日志中的密码,甚至姓名、身份证号等信息都进行脱敏处理。 脱敏前: ? 脱敏后: ?...---- 【 转载请注明出处——胡玉洋《数据脱敏——什么是数据脱敏》】

    10.9K60

    动态脱敏典型应用场景分析——业务脱敏、运维脱敏、数据交换脱敏

    如前文《静态脱敏典型应用场景分析——开发测试、数据共享、科学研究》所说,当前数据脱敏产品主要包括静态脱敏、动态脱敏产品两类。由于两者使用场景不同,关键技术有所差异。...动态脱敏常用在访问敏感数据即时进行脱敏,一般用来解决在生产环境需要根据不同情况对同一敏感数据读取时进行不同级别脱敏的场景,如业务脱敏、运维脱敏、数据交换脱敏等场景。...业务脱敏 场景特点 ❏ 业务用户访问应用系统时,需明确用户身份的真实性。 ❏ 不同权限业务用户访问敏感数据时需采取不同级别的脱敏规则。...❖ 支持基于敏感标签的脱敏访问策略,支持 B/S、 CS 等不同架构的业务系统、支持对字符串类型、数据类型、日期类型数据脱敏,通过随机、转换、遮盖方式实现对动态数据的脱敏效果,防止业务敏感数据信息和业务的个人隐私数据泄漏...美创数据脱敏系统内置敏感数据发现引擎,对源数据中的敏感数据按照脱敏规则,进行变形、漂泊、遮盖,保证脱敏后的数据保持数据的一致性和业务的关联性,应用于开发测试环境、数据交换、数据分析、数据共享等场景。

    2.4K30

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

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

    3.2K60

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

    包括之前说的如何修改toString,完成一些脱敏。 1 Instrumentation 上一篇字节码也能做有趣的事之ASM教你了如何去修改字节码?...相信看过的同学已经对如何修改字节码已经有一定印象了,但是这里有个问题,上一节我们是通过读取.class文件在内存里面使用,并不能影响我们实际jvm中使用的class。...它把Java的instrument功能从本地代码中解放出来,使之可以用 Java 代码的方式解决问题。java.lang.instrument是在JVM TI的基础上提供的Java版本的实现。...2.1.2 自定义 打算通过注解进行自定义脱敏,@DesFiled进行标记要脱敏的field,@Desenstized进行标记脱敏的类,通过继承一个basefilter进行脱敏的扩展。...第二张图是需要先获取到脱敏方法的引用然后传入this.name进行脱敏。 这下我们就知道自己需要做的了,这个时候其实完全不需要看接下来的细节了,可以自己去尝试一下,看看是如何去实现。

    1.6K61

    springboot脱敏控件再升级(支持日志脱敏

    数据脱敏指指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护,如我们日常可以看到的手机号“156**8888”等。...专注安全问题,解决脱敏需求,避免大家重复造轮子,secure-ext-spring-boot-starter控件已提供返回值脱敏的策略及使用方法。...---》jsonObject is jsonObject {} ",jsonObject); 4.2 基于简单对象的脱敏 无侵入,继续使用logback语法即可,已有代码无需改造。...(语法有调整) 由于脱敏是基于key-value模式,因此需要指定key,才可以解析出脱敏规则,因此语法需稍微调整为:空格+key^{}+空格 ; log.info("基于字符串的脱敏---》name...脱敏控件(含demo) 开发脚手架eboot

    1.1K30

    Java 数据脱敏?别慌,掩护队已经上线!

    今天我们要聊一聊数据脱敏。这个词听起来像特工电影里的高科技武器,其实它就是给敏感数据穿上“伪装衣”,防止“坏人”偷窥。无论是银行账号、身份证号码、邮箱地址,这些信息都需要时刻保持低调。如何低调?...没错——数据脱敏Java 已准备好为你服务!1. 什么是数据脱敏?你是不是以为要给数据打马赛克?数据脱敏,简单来说就是“数据打码”,让重要数据在数据库、日志、前端展示时只露出“有限真容”。...所以无论是保护个人隐私还是遵守法律法规,数据脱敏都是必要的手段。3. Java 数据脱敏的常用方式Java 提供了多种数据脱敏方式,今天咱们来聊几种经典实用的“伪装术”。...这里我们使用 Java 提供的 Cipher 类来进行对称加密。...总结Java 数据脱敏不仅仅是防止信息泄露的工具,它还是保护用户隐私的一道防线。在实际开发中,选择合适的脱敏方式(遮盖、替换、加密或哈希),能大大提升系统的安全性。

    12400

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

    学习资料“获取学习宝典 来源:blog.csdn.net/blue_driver/article/details/122025368 自定义Layout 编写log4j配置 正则匹配说明 注意事项 脱敏测试...---- 许多系统为了安全需要对敏感信息(如手机号、邮箱、姓名、身份证号、密码、卡号、住址等)的日志打印要求脱敏后才能输出,本文将结合个人经历及总结分享一种log4j日志脱敏方式。...org.apache.logging.log4j.core.layout.PatternLayout; import org.apache.logging.log4j.core.pattern.RegexReplacement; import java.nio.charset.Charset...,请检查配置重试");         }         for (RegexReplacement replace : this.replaces) {             // 遍历脱敏正则... & 替换敏感数据             msg = replace.format(msg);         }         // 脱敏后的日志         return msg;

    2.6K20

    手把手教你如何设计日志脱敏插件

    说到脱敏一般来说在数据输出的地方需要脱敏而我们数据落地输出的地方一般是有三个地方: 接口返回值脱敏 日志脱敏 数据库脱敏 这里主要说一下如何进行日志脱敏,对于代码中来说日志打印敏感数据有两种: 敏感数据在方法参数中...在编译时期修改抽象语法树修改toString()方法,就像类似Lombok一样,这个之前调研过,开发难度较大,可能后会更新如何去写。...可以看到上面修改上面toString()方法三个都比较麻烦,我们可以换个思路,不利用toString()生成日志信息,下面的部分具体解释如何去做。...component.properties 输入:log4j2.messageFactory=log.message.DesensitizedMessageFactory 4.性能基准测试: 基准测试聚焦打印日志效率如何...测试结果: 由上面结果可见增长速率基本稳定 上述结果脱敏的时间大概是未脱敏的时间1.5倍, 平均下来未脱敏的是0.1255ms 产生一条,而脱敏的是0.18825ms产生一条日志,两者相差0.06ms左右

    4.2K81

    大数据脱敏

    数据脱敏通过对数据进行脱敏,在保证数据可用性的同时,也在一定范围内保证恶意攻击者无法将数据与具体用户关联到一起,从而保证用户数据的隐私性。...本文首先分析了数据泄露可能带来的风险,然后详细介绍了数据脱敏技术的理论基础与常用算法,最后介绍了一个基于大数据平台的数据脱敏解决方案。...首先,实现基于大数据平台的脱敏算法库,可并行,高效的按照脱敏规则对隐私数据进行脱敏。...大数据脱敏平台的设计方向一般包括静态大数据脱敏平台和动态大数据脱敏平台,所谓静态和动态之分,主要在于脱敏的时机不同。...总结 针对于大数据平台对于数据脱敏的需求,本文分析了数据泄露可能带来的风险,介绍了数据脱敏技术的理论基础与实现方式,同时简单分析了大数据平台的隐私数据脱敏技术方向。

    2.3K40

    技术分享-动态脱敏

    3、系统侵入性 企业发展到一定规模,数据合规的需求日益增长,意味着在做数据脱敏的时候已经存在大量的应用系统,数据脱敏如何做到对系统侵入小或者无感接入。...4、系统稳定性 对于企业来讲,业务是根本,任何事情都要在保障系统稳定的前提下进行,数据脱敏对系统稳定性的影响如何评估,如何保障稳定性。...6)只能针对HTTP协议进行脱敏,无法对其他协议数据进行脱敏,无法对系统之间流转的数据进行脱敏。...3)不同于结果集脱敏是通过查询完结果集后在应用层脱敏,插件方式是在服务端通过SQL改写的方式进行脱敏,SQL改写脱敏使用数据库自带的函数进行脱敏,所有脱敏工作由数据库来完成,效率高。...5、数据脱敏提供动态脱敏插件和API脱敏SDK两种集成方式,满足客户对不同防控需求选择不同的集成方式。

    92410

    python实现数据的脱敏

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

    43730

    数据库静态脱敏

    产品简介 中安威士数据库静态脱敏系统(简称VS-DM-S)是一款由中安威士自主研发的数据遮蔽和仿真脱敏产品。...数据对比 本脱敏系统提供脱敏前后数据校验功能,从数据库结构、数据对象、表数量、表内数据量等维度对比分析源库数据和目标库数据的差异。用户管理员可据此判断该脱敏任务是否胜利完成,脱敏方案是否合理。...数据上传 脱敏后的数据可以实时的上传到目标服务器,也可以保存在脱敏服务器上,按需的上传到目标服务器,实现一次脱敏多次使用。...适用场景和价值 本脱敏系统支持库到库、库到文件、文件到文件、文件到库、本地脱敏等多种数据脱敏场景。...而且所有的仿真脱敏规则还支持可逆脱敏:使用数据仿真规则脱敏后的数据,再次经过脱敏设备处理后,可以将指定范围的数据还原为真实的原始数据。

    2.7K50
    领券