SpringBoot使用jasypt加解密密碼的實(shí)現(xiàn)方法(二)
在我們的服務(wù)中不可避免的需要使用到一些秘鑰(數(shù)據(jù)庫(kù)、redis等)
開(kāi)發(fā)和測(cè)試環(huán)境還好,但生產(chǎn)如果采用明文配置講會(huì)有安全問(wèn)題,jasypt是一個(gè)通用的加解密庫(kù),我們可以使用它。
<dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>2.1.1</version> </dependency>
配置文件:
# 加密的密鑰 # 測(cè)試環(huán)境可以采用在配置文件中配置 # 生產(chǎn)環(huán)境建議采用啟動(dòng)參數(shù)的形式傳入 # 其他配置參數(shù)參考:com.ulisesbocchio.jasyptspringboot.properties.JasyptEncryptorConfigurationProperties jasypt.encryptor.password=you salt # 解密得到原始密碼 spring.datasource.password= ENC(密文)
那密文怎么來(lái)的呢?
@Autowired StringEncryptor stringEncryptor; @Test public void encrypt() { System.out.println("PWD: " + stringEncryptor.encrypt("yourpassword")); }
public static void main(String[] args) { BasicTextEncryptor textEncryptor = new BasicTextEncryptor(); //加密所需的salt(鹽) textEncryptor.setPassword("G0CvDz7oJn6"); //要加密的數(shù)據(jù)(數(shù)據(jù)庫(kù)的用戶名或密碼) String username = textEncryptor.encrypt("root"); String password = textEncryptor.encrypt("root123"); System.out.println("username:"+username); System.out.println("password:"+password); }
jasypt默認(rèn)使用StringEncryptor來(lái)進(jìn)行加解密,我們也可以自定義自己的加解密類來(lái)替換它,具體用戶用時(shí)請(qǐng)百度/google。
到此這篇關(guān)于SpringBoot使用jasypt加解密密碼的實(shí)現(xiàn)方法(二)的文章就介紹到這了,更多相關(guān)SpringBoot加解密密碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于@RequestParam的使用所遇到的404問(wèn)題
這篇文章主要介紹了關(guān)于@RequestParam的使用所遇到的404問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08強(qiáng)烈推薦IDEA提高開(kāi)發(fā)效率的必備插件
這篇文章主要介紹了強(qiáng)烈推薦IDEA提高開(kāi)發(fā)效率的必備插件,文中有非常詳細(xì)的圖文示例,對(duì)想要提高企業(yè)開(kāi)發(fā)效率的小伙伴們有非常好的幫助,需要的朋友可以參考下2021-04-04Java 數(shù)據(jù)結(jié)構(gòu)哈希算法之哈希桶方式解決哈希沖突
實(shí)際上哈希桶是解決哈希表沖突的一種方法。常見(jiàn)的解決沖突的兩種方法:分離鏈接法、開(kāi)放定址法。其中使用分離鏈接法,得到的對(duì)應(yīng)關(guān)系即為哈希桶2022-02-02Java內(nèi)存溢出的幾個(gè)區(qū)域總結(jié)(注意避坑!)
內(nèi)存溢出是指應(yīng)用系統(tǒng)中存在無(wú)法回收的內(nèi)存或使用的內(nèi)存過(guò)多,最終使得程序運(yùn)行要用到的內(nèi)存大于虛擬機(jī)能提供的最大內(nèi)存,下面這篇文章主要給大家介紹了關(guān)于Java內(nèi)存溢出的幾個(gè)區(qū)域,總結(jié)出來(lái)給大家提醒注意避坑,需要的朋友可以參考下2022-11-11bootstrap.yml如何讀取nacos配置中心的配置文件
這篇文章主要介紹了bootstrap.yml讀取nacos配置中心的配置文件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12mybatis返回類型map時(shí)如何將key大寫轉(zhuǎn)為小寫
這篇文章主要介紹了mybatis返回類型map時(shí)實(shí)現(xiàn)將key大寫轉(zhuǎn)為小寫操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06Android應(yīng)用開(kāi)發(fā)之將SQLite和APK一起打包的方法
這篇文章主要介紹了Android應(yīng)用開(kāi)發(fā)之將SQLite和APK一起打包的方法,文章時(shí)間較早,盡管現(xiàn)在開(kāi)發(fā)環(huán)境已大都遷移至Android Studio上,但打包原理依然相同,需要的朋友可以參考下2015-08-08java實(shí)現(xiàn)163郵箱發(fā)送郵件到qq郵箱成功案例
這篇文章主要為大家分享了java實(shí)現(xiàn)163郵箱發(fā)送郵件到qq郵箱成功案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05