SpringBoot使用jasypt加解密密碼的實現方法
jasypt是一個通用的加解密庫,我們可以使用它在配置文件中對數據庫密碼進行加密,以確保其安全性。
1、注入依賴
<dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>2.1.1</version></dependency>
2、配置文件
#以數據庫密碼加密為例## 數據源配置spring.datasource.url=jdbc:mysql://lochost:3306/jasypt?characterEncoding=utf8spring.datasource.username=root#Fddt+VfcW5+j5lAbuOXxPB3mGb0iBLLe 是采用jasypt進行加密以后生成的密文spring.datasource.password=ENC(Fddt+VfcW5+j5lAbuOXxPB3mGb0iBLLe)spring.datasource.driver-class-name=com.mysql.jdbc.Driver#jasypt加密的密匙jasypt.encryptor.password=abcderf(這個是自己設置的)
那么如何得到這個密文呢?
1、win+r cmd打開命令窗口 在你的maven庫中找到 jasypt-1.9.2.jar 包執行下面的命令
java -cp D:Mavenrepositoryorgjasyptjasypt1.9.2jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input='密鑰(abcderf)' password=root(加密的密碼) algorithm=PBEWithMD5AndDES
然后復制密文即可
2、代碼生成(這種方法沒有使用過 參考鏈接:https://www.jb51.net/article/197600.htm)
import org.jasypt.util.text.BasicTextEncryptor;public class Test {public static void main(String[] args) { BasicTextEncryptor textEncryptor = new BasicTextEncryptor(); //加密所需的salt(鹽) textEncryptor.setPassword('PBEWithMD5AndDES'); //要加密的數據(數據庫的用戶名或密碼) String username = textEncryptor.encrypt('root'); String password = textEncryptor.encrypt('root'); System.out.println('username:'+username); System.out.println('password:'+password); }}
到此這篇關于SpringBoot使用jasypt加解密密碼的實現方法的文章就介紹到這了,更多相關SpringBoot加解密密碼內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
1. 解決Android Studio 格式化 Format代碼快捷鍵問題2. php解決注冊并發問題并提高QPS3. JavaEE SpringMyBatis是什么? 它和Hibernate的區別及如何配置MyBatis4. Java使用Tesseract-Ocr識別數字5. Springboot 全局日期格式化處理的實現6. Python使用urlretrieve實現直接遠程下載圖片的示例代碼7. SpringBoot+TestNG單元測試的實現8. JavaScript實現頁面動態驗證碼的實現示例9. vue實現web在線聊天功能10. 完美解決vue 中多個echarts圖表自適應的問題
