SpringBoot系列---使用jasypt把配置文件密码加密
使用jasypt把配置文件密码加密
1.引入pom坐标
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.5</version>
</dependency>
2.新增jasypt配置
2.1使用yml配置文件进行配置
jasypt:
encryptor:
password: fast_boot_security
2.2使用System进行配置(适用于代码扫描比较严格的场景,把jasypt的密码放入jvm启动参数)
#在启动类中添加配置
public static void main(String[] args) {
System.setProperty("jasypt.encryptor.password",System.getProperty("jasypt.publicKey"));
ConfigurableApplicationContext run = SpringApplication.run(FastBootApplication.class, args);
System.out.println("run = " run);
}
在jvm启动参数中添加-D参数:"-Djasypt.publicKey=fast_boot_security"。
3.新增加解密测试类
@RestController
@Api(tags = "ypt测试工具类")
@RequestMapping("ypt")
public class YptTestController extends BaseController {
@Resource
private StringEncryptor stringEncryptor;
@ApiOperation(value = "加密")
@PostMapping("/encrypt")
public R<String> encrypt(String encryptStr) {
return select(this.stringEncryptor.encrypt(encryptStr));
}
@ApiOperation(value = "解密")
@GetMapping("decrypt")
public R<String> decrypt(String decryptStr) {
return select(this.stringEncryptor.decrypt(decryptStr));
}
}
4.替换配置文件中的明文密码
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3307/home-finance?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
username: root
password: ENC(iKcnV0M2Ro4gEGmegC62bO2vb7y4wo955bpkFmn9mEKQSU63P1UtwvQKN 7MhJmywkrEauRDOAmc5ZKEZy cg==)
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhibgeef
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22 -
excel打印预览压线压字怎么办
PHP中文网 06-22