数据安全考虑数据库账号密码做个加密处理
添加依赖库
<!--数据库加密-->
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
添加key
jasypt.encryptor.password=EbfYkitulv73I2p0mXI50JMXoaxZT55
值可以随便改。
生成加密字符串
package com.example.modeltree.controller;
import com.example.modeltree.ModeltreeApplication;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jasypt.encryption.StringEncryptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
/**
* @program: modeltree
* @description:
* @author: created by Gaohuahui
* @create: 2022-01-11 14:43
**/
@Api(tags = "密码")
@RestController
@RequestMapping("/demo")
public class DemoController {
@Autowired
StringEncryptor encryptor;
@GetMapping("/get")
@ApiOperation(value = "get", notes = "get")
@ResponseBody
public void test() {
String username = encryptor.encrypt("root");
System.out.println(username);
String password = encryptor.encrypt("123");
System.out.println(password);
}
}
请求接口打印生成密钥,修改配置文件即可
#用户名
spring.datasource.username=ENC(X3C/6C4lu6iv34NN5jsMWWGKyUE8+ZnoobDAA8575JKGnvPWa5NYcAiSq1/pZSzo)
#密码
spring.datasource.password=ENC(445VNaUSM8IEuT+FzCWJR23ToXXcj5Wlni/jPX5EEZ9PZ+zZ3O74240nE+q5/WYr)
问题:
手动测试可以关闭手动测试可以关闭
可以加上
<plugin><!--编译跳过测试文件检查的生命周期-->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
参考文档