SpringBoot整合Jasypt實(shí)現(xiàn)配置加密的步驟詳解
一、Jasypt是什么?
Jasypt(Java Simplified Encryption)是一個(gè)Java庫,提供了一種簡(jiǎn)單的加密解密方式,可用于保護(hù)敏感數(shù)據(jù),例如密碼、API密鑰和數(shù)據(jù)庫連接信息等。
Jasypt 提供了多種加密算法,包括標(biāo)準(zhǔn)的對(duì)稱加密算法(如 DES、TripleDES、AES)、非對(duì)稱加密算法(如 RSA)以及哈希函數(shù)(如 MD5、SHA-1)。它還支持基于口令的加密,這意味著你可以使用一組簡(jiǎn)單的密碼來保護(hù)你的數(shù)據(jù),而不必?fù)?dān)心復(fù)雜的密鑰管理操作。
Jasypt 與 Spring 框架集成良好,可以輕松地將其與 Spring Boot 應(yīng)用程序一起使用。它還提供了自定義實(shí)現(xiàn)的接口,可以與其他應(yīng)用程序框架或庫進(jìn)行集成。
在使用 Jasypt 進(jìn)行加密時(shí),通常需要設(shè)置一個(gè)鹽值,以增加加密過程的安全性。鹽值是一個(gè)隨機(jī)生成的字符串,將其與待加密數(shù)據(jù)結(jié)合在一起,使得同樣的明文每次加密后得到的密文都不同,增加了破解的難度。
綜上所述,Jasypt 是一個(gè)易于使用和配置的 Java 加密庫,適用于任何需要保護(hù)敏感數(shù)據(jù)的應(yīng)用程序。
二、使用步驟
1.引入
<!-- 配置文件參數(shù)加密 --> <dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>3.0.5</version> </dependency>
2.測(cè)試使用
啟動(dòng)類的添加注解
@SpringBootApplication @EnableEncryptableProperties//開啟自動(dòng)解密功能 public class SpringRetryApplication { public static void main(String[] args) { SpringApplication.run(SpringRetryApplication.class, args); } }
jasypt配置類
@Configuration public class JasyptConfig { @Bean("jasyptStringEncryptor") public StringEncryptor stringEncryptor() { StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor(); //設(shè)置加密算法 encryptor.setAlgorithm("PBEWithMD5AndDES"); // 設(shè)置鹽值 encryptor.setPassword("salt2"); return encryptor; } }
pplication.properties配置
固定格式ENC()括號(hào)里面是加密后的密文 然后實(shí)現(xiàn)自動(dòng)解密
spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/carrent?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=ENC(mkCsYhIdnb3XWbiHyjsWGA==)
3.結(jié)果
正常啟動(dòng) spring boot 然后查詢表數(shù)據(jù)正常
到此這篇關(guān)于SpringBoot整合Jasypt實(shí)現(xiàn)配置加密的步驟詳解的文章就介紹到這了,更多相關(guān)SpringBoot整合Jasypt配置加密內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- springboot使用jasypt對(duì)配置文件加密加密數(shù)據(jù)庫連接的操作代碼
- Springboot集成Jasypt實(shí)現(xiàn)配置文件加密的方法
- 微服務(wù)SpringBoot整合Jasypt加密工具的場(chǎng)景分析
- SpringBoot整合jasypt實(shí)現(xiàn)敏感信息的加密詳解
- SpringBoot集成Jasypt敏感信息加密的操作方法
- springboot 項(xiàng)目使用jasypt加密數(shù)據(jù)源的方法
- Jasypt對(duì)SpringBoot配置文件加密
- jasypt 集成SpringBoot 數(shù)據(jù)庫密碼加密操作
- SpringBoot 集成 Jasypt 對(duì)數(shù)據(jù)庫加密以及踩坑的記錄分享
- 基于Jasypt對(duì)SpringBoot配置文件加密
- 在SpringBoot中通過jasypt進(jìn)行加密解密的方法
- SpringBoot使用Jasypt對(duì)配置文件和數(shù)據(jù)庫密碼加密
相關(guān)文章
SpringSecurity授權(quán)實(shí)現(xiàn)基本思路
本文介紹了SpringSecurity中使用FilterSecurityInterceptor進(jìn)行權(quán)限校驗(yàn)的基本方法,通過SecurityContextHolder獲取Authentication中的權(quán)限信息,感興趣的朋友跟隨小編一起看看吧2024-10-10SpringBoot 多任務(wù)并行+線程池處理的實(shí)現(xiàn)
這篇文章主要介紹了SpringBoot 多任務(wù)并行+線程池處理的實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04Java基礎(chǔ)篇_有關(guān)接口和抽象類的幾道練習(xí)題(分享)
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)篇_有關(guān)接口和抽象類的幾道練習(xí)題(分享)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06Spring Boot集成mongodb數(shù)據(jù)庫過程解析
這篇文章主要介紹了Spring Boot集成mongodb數(shù)據(jù)庫過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05JAVA 文件監(jiān)控 WatchService的示例方法
本篇文章主要介紹了JAVA 文件監(jiān)控 WatchService的示例方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10idea 打包的jar運(yùn)行報(bào) "XXX中沒有主清單屬性"
這篇文章主要介紹了idea 打包的jar運(yùn)行報(bào) "XXX中沒有主清單屬性",文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03Java中List的contains()方法的使用小結(jié)
List?的?contains()?方法用于檢查列表中是否包含指定的元素,借助equals()方法進(jìn)行判斷,下面就來介紹Java中List的contains()方法的使用小結(jié),感興趣的可以了解一下2025-04-04