随着信息安全的日益重要,对敏感数据进行加密和脱敏已成为业务开发中不可忽视的一环。本文将介绍如何在Spring Boot项目中利用注解、反射和AOP的组合,实现对敏感数据的加密和脱敏,提高数据安全性。
几天前使用了Jackson对数据的自定义序列化。突发灵感,利用此方法来简单实现接口返回数据脱敏,故写此文记录。
数据脱敏插件,目前支持地址脱敏、银行卡号脱敏、中文姓名脱敏、固话脱敏、身份证号脱敏、手机号脱敏、密码脱敏 一个是正则脱敏、另外一个根据显示长度脱敏,默认是正则脱敏,可以根据自己的需要配置自己的规则。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/details/77759844
以前用Mybatis插件的形式写了一个数据脱敏工具,但是发现有一定的局限性。很多时候我们从ORM查询到的数据有其它逻辑要处理,比如根据电话号查询用户信息,你脱敏了就没有办法来处理该逻辑了。所以脱敏这个步骤需要后置,放在JSON序列化这个阶段比较合适。今天就来实现这个功能。
点击上方蓝色字体,选择“设为星标” 回复”学习资料“获取学习宝典原文:blog.csdn.net/weixin_61594803 1.SQL数据脱敏实现 MYSQL(电话号码,身份证)数据脱敏的实现 -- CONCAT()、LEFT()和RIGHT()字符串函数组合使用,请看下面具体实现 -- CONCAT(str1,str2,…):返回结果为连接参数产生的字符串 -- LEFT(str,len):返回从字符串str 开始的len 最左字符 -- RIGHT(str,len):从字符串str 开始,返
在日常工作中,日志处理是我们每一个程序员必备的素质,但是在有些场景下客户信息敏感,需要进行某些字段,或者某部分字段的脱敏处理。接到需求我们开始操刀!
近期,博主公司应安全审计要求,需要对数据库中的用户关键信息做加密处理,这样,即使生产数据被脱裤,也不会泄露用户的敏感信息,在做了初步的需求归纳和功能分析后,我们制定了简单的开发方案,将需要加解密的字段的元数据信息通过配置或注解的方式标记出来,尝试使用hibernate的filter和Interceptor针对用户sql做拦截,做到透明化加解密。但是这个方案很快被否决了,查询结果集没法通过这种方式达到目的。然后将方向转向了代理JDBC驱动的方式。在摸索JDBC代理方案过程中发现,业界已经有了非常成熟的针对数据库字段透明化加解密的方案,而且和我们场景以及方案非常相符,整体方案如下:
实际的业务开发过程中,我们经常需要对用户的隐私数据进行脱敏处理,所谓脱敏处理其实就是将数据进行混淆隐藏,例如下图,将用户的手机号、地址等数据信息,采用*进行隐藏,以免泄露个人隐私信息。
.markdown-body{word-break:break-word;line-height:1.75;font-weight:400;font-size:15px;overflow-x:hidden;color:#333}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{line-height:1.5;margin-top:35px;margin-bottom:10px;padding-bottom:5px}.markdown-body h1{font-size:30px;margin-bottom:5px}.markdown-body h2{padding-bottom:12px;font-size:24px;border-bottom:1px solid #ececec}.markdown-body h3{font-size:18px;padding-bottom:0}.markdown-body h4{font-size:16px}.markdown-body h5{font-size:15px}.markdown-body h6{margin-top:5px}.markdown-body p{line-height:inherit;margin-top:22px;margin-bottom:22px}.markdown-body img{max-width:100%}.markdown-body hr{border:none;border-top:1px solid #ddd;margin-top:32px;margin-bottom:32px}.markdown-body code{word-break:break-word;border-radius:2px;overflow-x:auto;background-color:#fff5f5;color:#ff502c;font-size:.87em;padding:.065em .4em}.markdown-body code,.markdown-body pre{font-family:Menlo,Monaco,Consolas,Courier New,monospace}.markdown-body pre{overflow:auto;position:relative;line-height:1.75}.markdown-body pre>code{font-size:12px;padding:15px 12px;margin:0;word-break:normal;display:block;overflow-x:auto;color:#333;background:#f8f8f8}.markdown-body a{text-decoration:none;color:#0269c8;border-bottom:1px solid #d1e9ff}.markdown-body a:active,.markdown-body a:hover{color:#275b8c}.markdown-body table{display:inline-block!important;font-size:12px;width:auto;max-width:100%;overflow:auto;border:1px solid #f6f6f6}.markdown-body thead{background:#f6f6f6;color:#000;text-align:left}.markdown-body tr:nth-child(2n){background-color:#fcfcfc}.markdown-body td,.markdown-body th{padding:12px 7px;line-height:24px}.markdown-body td{min-width:120px}.markdown-body blockquote{color:#666;padding:1px 23px;margin:22px 0;border-left:4px solid #cbcbcb;background-color:#f8f8f8}.markdown-body blockquote:after{display:block;content:""}.markdown-body blockquote>p{margin:10px 0}.markdown-body ol,.markdown-body ul{padding-left:28px}.markdown-body ol li,.markdown-body
这几天公司在排查内部数据账号泄漏,原因是发现某些实习生小可爱居然连带着账号、密码将源码私传到GitHub上,导致核心数据外漏,孩子还是没挨过社会毒打,这种事的后果可大可小。
我之前写了一篇关于使用注解和策略模式实现数据脱敏功能,其中使用策略模式用来消除if语句,实现业务与条件逻辑的解耦,有利于功能的扩展。
上周接到老大的需求说让小妹整理下工具类,新项目要用,本想直接拿以前的改改直接用的,结果发现以前的工具类存在很多问题,光加解密工具类就重复写了很多个。
在数据经济时代数据要素已经成为了企业重要资产,对于企业不同的业务部门来说,每时每刻不在通过共享数据方式进行业务协作。一些企业会将大量的敏感客户数据、订单数据拷贝到开发、测试、数据分析环境,但并没有采取任何对数据脱敏的措施。这将面临重大的监管及数据泄露风险。为了保证数据在企业内外部依法依规使用,需要相应的数据脱敏技术来实现对敏感数据的保护。
安全控制一直是治理的重要环节,数据脱敏属于安全控制的范畴。对互联网公司、传统行业来说,数据安全一直是极为重视和敏感的话题。
在日常开发中,我们会使用很多工具类来提升项目开发的速度,而国内用的比较多的 Hutool 框架,就是其中之一。
当看到这个文章名的时候,是不是很熟悉,是的shigen之前发表了一个这个题目一样的文章,今天的是plus加强版。
rpamis-security (opens new window)1.0.1主要通过Mybatis-Plugin及AOP切面实现安全功能,其主要组件如下图所示
本篇是本系列的最后一篇,在这篇中教你用ASM实际开发中做一些可用的东西。包括之前说的如何修改toString,完成一些脱敏。
package com.test.afirst.month_11.day1127; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Patter
前言 这几天学校开始选毕业设计,选到了数据脱敏系统设计的题目,在阅读了该方面的相关论文之后,感觉对大数据安全有了不少新的理解。 介绍 随着大数据时代的到来,大数据中蕴藏的巨大价值得以挖掘,同时也带来了
下面代码的核心在于引用了一个外部的jar包用于sql解析(暂未确认企业环境是否可以直接使用)。
最近逛开源社区的时候,偶尔发现了一个 MyBatis 增强框架-MyBatis-Flex ,感觉挺不错的,集合了 MyBatis-Plus、Fluent-MyBatis 的优点。
在开始本文之前简单说几句,有读者反应在面试阿里时被问了网关相关的内容,这位读者刚好看到本号之前两篇网关的文章,帮上了忙,再次推荐给大家,相信大家看完肯定有收获
在实际的软件系统开发过程中,由于业务的需求,在代码层面实现数据的脱敏还是远远不够的,往往还需要在数据库层面针对某些关键性的敏感信息,例如:身份证号、银行卡号、手机号、工资等信息进行加密存储,实现真正意义的数据混淆脱敏,以满足信息安全的需要。
随着欧盟GDPR、美国CCPA,以及我国《网络安全法》等法规的实施与监管,隐私合规与数据安全治理成为企业当前亟需解决的一大安全任务。具体来说,企业通过技术与管理措施,如何在不影响或少影响原有业务流程的同时去满足合规性?其中,数据匿名化作为一种重要的技术手段,在满足数据统计分析的同时可有效地降低个体隐私泄露风险。且有趣的是,近年来研究发现它具有天然的合规遵循优势。GDPR等法规对赋予用户更多的隐私数据控制权,反过来削减企业的数据控制权与主动权。那么,匿名化技术是否可以帮助企业重新打开数据主动权和控制权这个局面?带着这个疑问,本文将从合规背景、技术算法以及应用与产品三个方面对该技术进行介绍。
数据安全这块还是挺严重的,尤其是自己专注于业务开发,不能总停留在一个地方,还要关注其他的一些问题,比如数据安全。
上一篇文章《Springboot集成Mybatis-flex(一)》提到Mybatis Flex和Spring Boot的初步集成和基础使用。今天我们再来探索Mybatis Flex其他特性的使用。
特殊说明: 解决问题的光鲜,藏着磕Bug的痛苦。 万物皆入轮回,谁也躲不掉! 以上文章,均是我实际操作,写出来的笔记资料,不会出现全文盗用别人文章!烦请各位,请勿直接盗用!
数据脱敏(Data Masking),又称数据混淆、数据漂白、数据去隐私化。用虚假的数据掩饰真实数据,以达到防止数据泄漏的目的。
敏感信息脱敏」实际上是隶属于安全领域」的一个子领域,而日志脱敏」又是敏感信息脱敏」的一个子领域。
在数据流动、共享、交换成为趋势的今天,数据脱敏已经成为实现敏感数据保护的重要手段之一。数据脱敏产品也逐步被金融、政府、企业等行业客户广泛使用。
实际工作中总会发生数据误删除的场景,在没有备份情况下,如何快速恢复误删数据就显得非常重要。
在银行企业生产数据库中,储存着大量的敏感信息,例如储户个人身份信息、手机号码、身份证、银行账户信息、资金信息等,这些数据,在银行业很多工作场景中都会得到使用,例如,业务分析、开发测试、审计监管,甚至是一些外包业务等方面,使用的都是真实的业务数据和信息。如果这些数据发生泄露、损坏,不仅会给银行企业带来经济上的损失,更重要的是会大大影响用户对于银行的信任度。
最近连着几天晚上在家总是接到一些奇奇怪怪的电话,“哥,你是 xxx 吧,我们这里是 xxx 高端男士私人会所...”,握草,我先是一愣,然后狠狠的骂了回去。一脸傲娇的转过头,面带微笑稍显谄媚:老婆你听我说,我真的啥也没干,你要相信我!
在大数据产业迅速发展的过程当中,给我们带来了极大的便利,也发生着大量的数据泄露事件。从2013年开始,大量数据从政府机构、医疗保险公司以及很多知名互联网公司等渠道泄露而出,对国家安全和个人生命财产造成了严重威胁。因此,政企一方面要促进数据的共享和价值挖掘,同时更要保护这些数据的安全性,即不被泄露和滥用。可究竟该如何进行保护?在基于数据安全常规的访问控制、行为分析、加密等传统防护措施外,针对需要频繁流转的大数据,还需要对有权限访问数据的人以及其所能访问到的敏感数据进行处理——数据脱敏,或许就是答案。
在数字化时代,数据的价值日益凸显,然而,保护用户隐私成为了至关重要的任务。本文将深入探讨数据脱敏的概念、法律依据、脱敏技术,以及在业务中的应用场景。
数栈是云原生—站式数据中台PaaS,我们在github和gitee上有一个有趣的开源项目:FlinkX,FlinkX是一个基于Flink的批流统一的数据同步工具,既可以采集静态的数据,也可以采集实时变化的数据,是全域、异构、批流一体的数据同步引擎。大家喜欢的话请给我们点个star!star!star!
如前文《静态脱敏典型应用场景分析——开发测试、数据共享、科学研究》所说,当前数据脱敏产品主要包括静态脱敏、动态脱敏产品两类。由于两者使用场景不同,关键技术有所差异。
前几天数据君的朋友圈,已经被#秋天的第一杯奶茶#刷屏了。 这个梗指的是9月22日秋分后,在意你的人给你发一个红包(一般是52元)或买一杯温暖的奶茶,就能让你在这个萧瑟的秋天喝上第一杯奶茶,感受到来自Ta的温暖。 那么问题来了,你喝到了吗 没有没关系,秋天第一杯奶茶没喝到,可以来接收秋天第一份安心,情场不得意,在职场补回来,让你的数据100%加密不可逆,再牛的黑客来了也破解不了,从此工作更顺心。 鹅厂数据库智能管家DBbrain推出安全自治功能,鹅厂出品,必属精品,从此,鹅们数据库自带360°安
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/details/77689459
在这样的背景下,全球掀起了监管不断强化的数据安全的立法热潮。欧盟的GeneralData Protection Regulation (GDPR);美国的CaliforniaConsumer Privacy Act(CCPA);我国已实施的基础性法规《网络安全法》,其中一个章节单独对个人信息与数据安全给出了诸多原则性的规定与约束,且两部专门的法律《数据安全法》、《个人信息保护法》在加快立法与制定中。(《浅析数据安全与隐私保护之法规》)
在我们书写代码的时候,会书写许多日志代码,但是有些敏感数据是需要进行安全脱敏处理的。 对于日志脱敏的方式有很多,常见的有①使用conversionRule标签,继承MessageConverter②书写一个脱敏工具类,在打印日志的时候对特定特字段进行脱敏返回。 两种方式各有优缺点: 第一种方式需要修改代码,不符合开闭原则。 第二种方式,需要在日志方法的参数进行脱敏,对原生日志有入侵行为。 自定义脱敏组件(slf4j+logback) 一个项目在书写了很多打印日志的代码,但是后面有了脱敏需求,如果我们去手动改
领取专属 10元无门槛券
手把手带您无忧上云