当前位置:首页 > 单片机 > 架构师社区
[导读]一、前言核心隐私数据无论对于企业还是用户来说尤其重要,因此要想办法杜绝各种隐私数据的泄漏。下面陈某带大家从以下三个方面讲解一下隐私数据如何脱敏,也是日常开发中需要注意的:配置文件数据脱敏接口返回数据脱敏日志文件数据脱敏文章目录如下:二、配置文件如何脱敏?经常会遇到这样一种情况:项...

一、前言

核心隐私数据无论对于企业还是用户来说尤其重要,因此要想办法杜绝各种隐私数据的泄漏。下面陈某带大家从以下三个方面讲解一下隐私数据如何脱敏,也是日常开发中需要注意的:

  1. 配置文件数据脱敏
  2. 接口返回数据脱敏
  3. 日志文件数据脱敏
文章目录如下:

Springboot 日志、配置文件、接口数据如何脱敏?老鸟们都是这样玩的!

二、配置文件如何脱敏?

经常会遇到这样一种情况:项目的配置文件中总有一些敏感信息,比如数据源的url、用户名、密码....这些信息一旦被暴露那么整个数据库都将会被泄漏,那么如何将这些配置隐藏呢?

以前都是手动将加密之后的配置写入到配置文件中,提取的时候再手动解密,当然这是一种思路,也能解决问题,但是每次都要手动加密、解密不觉得麻烦吗?

Springboot 日志、配置文件、接口数据如何脱敏?老鸟们都是这样玩的!
今天介绍一种方案,让你在无感知的情况下实现配置文件的加密、解密。利用一款开源插件:jasypt-spring-boot。项目地址如下:

https://github.com/ulisesbocchio/jasypt-spring-boot
使用方法很简单,整合Spring Boot 只需要添加一个starter

1. 添加依赖

<dependency>
        <groupId>com.github.ulisesbocchiogroupId>
        <artifactId>jasypt-spring-boot-starterartifactId>
        <version>3.0.3version>
dependency>  

2. 配置秘钥

在配置文件中添加一个加密的秘钥(任意),如下:

jasypt:
  encryptor:
    password: Y6M9fAJQdU7jNp5MW
当然将秘钥直接放在配置文件中也是不安全的,我们可以在项目启动的时候配置秘钥,命令如下:

java -jar xxx.jar  -Djasypt.encryptor.password=Y6M9fAJQdU7jNp5MW

3. 生成加密后的数据

这一步骤是将配置明文进行加密,代码如下:

@SpringBootTest
@RunWith(SpringRunner.class)
public class SpringbootJasyptApplicationTests 
{

    /**
     * 注入加密方法
     */

    @Autowired
    private StringEncryptor encryptor;

    /**
     * 手动生成密文,此处演示了url,user,password
     */

    @Test
    public void encrypt() {
        String url = encryptor.encrypt("jdbc\\:mysql\\://127.0.0.1\\:3306/test?useUnicode\\=true
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭