Spring Boot加密配置文件特殊内容的示例代码详解

前言:

这篇文章主要介绍了Spring Boot加密配置文件特殊内容的相关知识,是小编在网上看的的,如有冒犯会及时修改。本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

Spring Boot加密配置文件特殊内容的示例代码详解

有时安全不得不考虑,看看新闻泄漏风波事件就知道了我们在用Spring boot进行开发时,经常要配置很多外置参数ftp数据库连接信息、支付信息等敏感隐私信息,如下

Spring Boot加密配置文件特殊内容的示例代码详解

这不太好,特别是互联网应用,应该用加密的方式比较安全,有点类似一些应用如电商、公安、安检平台、滚动式大屏中奖信息等显示身份证号和手机号都是前几位4109128*********和158*******。那就把图中的明文改造下

1. 引入加密包,可选,要是自己实现加解密算法,就不需要引入第三方加解密库

<dependency>
 <groupId>com.github.ulisesbocchio</groupId>
 <artifactId>jasypt-spring-boot-starter</artifactId> 
<version>3.0.2</version>
</dependency>复制代码

2. 加密敏感内容,然后填充配置文件加密代码:

BasicTextEncryptor textEncryptor = new BasicTextEncryptor();
textEncryptor.setPassword("company");		
String name = textEncryptor.encrypt("root");		
String password = textEncryptor.encrypt("cstorfs");			
System.out.println("数据库用户名加密后:"+name);		
System.out.println("数据库密码加密后:"+password);复制代码

输出加密后的效果

Spring Boot加密配置文件特殊内容的示例代码详解

把这两个值对应的填充到数据库用户名和密码

Spring Boot加密配置文件特殊内容的示例代码详解

3. 编写配置类就是Spring里的标有@Configuration注解的类,然后解密配置文件里的数据库用户名和密码(就是上图中的敏感属性字段)

Spring Boot加密配置文件特殊内容的示例代码详解

4. 编写测试案例只写核心代码

/ 我使用的最新版Springboot2.3.0(放弃1版本)启动后,不放心的话可以测试数据库是否连接正常		
UserMapper userMapper = applicationContext.getBean(UserMapper.class);		
Example example = new Example(User.class);		
example.createCriteria().andEqualTo("username", "dongguangming");		
List<User> userList = userMapper.selectByExample(example);		
if (userList.size() > 0) {			
User user = userList.get(0);			
logger.info("数据库连接正常,从用户表取用户名是donggguangming的数据,用户:" + user);		
}复制代码

输出效果:

Spring Boot加密配置文件特殊内容的示例代码详解

ok,就是这效果!!!注意,加解密算法没有强制要求,可以自己写,敏感信息(ftp、email、数据库连接信息、支付支付宝微信等)也可以接着加,用的时候把它解密出现就行

另外本人整理收藏了20年多家公司面试知识点整理 共127页的PDF 以及各种知识点整理 免费分享给大家,想要资料的话点击 118436082 暗号JJ,或者私信我,暗号PDF。 深入底层,剖析源码。了解本质。 爱编程,爱生活,爱分享!文章的最后祝大家在工作的工作顺利,在找工作的都能拿到自己满意的offer! 

到此这篇关于Spring Boot加密配置文件特殊内容的示例代码详解的文章就介绍到这了,更多相关spring boot加密配置文件特殊内容内容请关注我或继续浏览下面的相关文章。如果觉得本篇文章有用的话请给个赞,希望大家以后多多支持小编,谢谢大家的观看!

Spring Boot加密配置文件特殊内容的示例代码详解

原文 

https://juejin.im/post/5ef052796fb9a0586b592332

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » Spring Boot加密配置文件特殊内容的示例代码详解

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址