springboot 项目使用jasypt加密数据源的方法

网友投稿 1059 2022-11-25

springboot 项目使用jasypt加密数据源的方法

springboot 项目使用jasypt加密数据源的方法

引入maven 坐标

com.github.ulisesbocchio

jasypt-spring-boot-starter

3.0.4

配置密钥

#jasypt加密的盐值

jasypt.encryptor.password=jsuuwjnf

生成加密字符串

@Autowired

StringEncryptor encryptor;

@Test

void test1() {

String url = encryptor.encrypt("jdbc:mysql://192.168.134.135:3306/rbac?serverTimezone=UTC&useSSL=false&characterEncoding=utf8");

String name = encryptor.encrypt("root");

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

System.out.println(url);

System.out.println(name);

System.out.println(password);

}

生成结果

修改原先的数据库连接信息

# 加密后的数据库url

spring.datasource.url=ENC(ztfgopw048yih3D45sPq4ia7v4rTDnvE+4Oye2rMyN9XBOovSlX5k3CHs1K4mBylbGGmf8blj1QPBqdSEA4UGIGLdQ1Qaj4+8kmUGrmAzXN6/Qh1CNxUpeZgghNe0HJ5NqPoGa+sSsPh9JIdhlrvhE6YYfAXTyxEpyUa5wTj0Tw=)

# 加密后的数据库用户名&&密码:

spring.datasource.username=ENC(68DX3O6HbDljx70ttga6wvtzaGnmswMNGCcq+QWtq8aih4xcTrcpDEeYHYLX+FYa)

spring.datasource.password=ENC(60cxL9lRBQAtWX+Yuk6Sb5NBfXIDybLhwWN9juj2vCe/uUqudb9rwXClYOyO4eN4jOEVy6o5)

测试

使用加密后的数据源信息,正常连接数据库,测试请求通过。

此外,加密盐值在生成加密信息以后可以删掉,在部署spring boot项目的时候通过命令行的方式将盐值注入进去,防止数据源信息被解密。

java -jar app-0.0.1-SNAPSHhttp://OT.jar --jasypt.encryptor.password=xxxx

总结

本篇文档只是基于简单的加密角度来编写,未深入探讨,若有不足还请指正。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:安卓调用webservice两个工具类
下一篇:查找jar包中.class文件关键字(变量名,字符串)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~