jasypt数据源加密

[TOC]


#### 1.pom文件引入依赖
````
<dependency>
    <groupId>com.github.ulisesbocchio</groupId>
    <artifactId>jasypt-spring-boot-starter</artifactId>
    <version>2.1.0</version>
</dependency>
````

#### 2.yml配置本地salt
````
#加密salt
jasypt:
    encryptor:
        password: xxx #开发环境暴露,生产环境启动传参
````
#### 3.加密数据源
````
package com.zt.controller;

import org.jasypt.encryption.StringEncryptor;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class SpringbootEsApplicationTests {
    @Autowired
    StringEncryptor encryptor;

    @Test
    void contextLoads() {

        String dbUrl = encryptor.encrypt("http://xxx");

        //System.out.println(dbUrl);

        String username = encryptor.encrypt("xxxx");

        //System.out.println(username);

        String password = encryptor.encrypt("xxxx");

        System.out.println(password);


    }
}

````
#### 4.ENC规则、替换加密数据,配置完本地启动即可

````
# 主库数据源
master:
    url: jdbc:mysql://xxx:3306/table?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
    username: ENC(zrGwWI/r0xlN8pLKBmb0Fo==)
    password: ENC(p3P5+Mr9/EItpA2ZroTDGh3UAPKzqesFjIhqsLE=)

````

#### 5.生产模式删除暴露的salt,使用启动参数传入
````
java -jar -Djasypt.encryptor.password=xxx java.jar

````

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值