欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Jasypt對SpringBoot配置文件加密

 更新時間:2021年05月21日 09:10:43   作者:請叫我頭頭哥  
數(shù)據(jù)庫密碼直接明文寫在配置中,對安全來說,是一個很大的挑戰(zhàn)。一旦密碼泄漏,將會帶來很大的安全隱患。尤其在一些企業(yè)對安全性要求很高,因此我們就考慮如何對密碼進行加密。本文著重介紹Jasypt對SpringBoot配置文件加密。

引入maven

        <dependency>
            <groupId>com.github.ulisesbocchio</groupId>
            <artifactId>jasypt-spring-boot-starter</artifactId>
            <version>3.0.3</version>
        </dependency>

生成加密串

將連接數(shù)據(jù)庫的用戶名和密碼進行加密

    public static void main(String[] args) {
        BasicTextEncryptor textEncryptor = new BasicTextEncryptor();
        //加密所需的salt(鹽)
        textEncryptor.setPassword("Bt%XJ^n1j8mz");
        //要加密的數(shù)據(jù)(數(shù)據(jù)庫的用戶名或密碼)
        String username = textEncryptor.encrypt("toutou");
        String password = textEncryptor.encrypt("demo123456");
        System.out.println("username:"+username);
        System.out.println("password:"+password);
    }

輸出結(jié)果如下:

將用戶名和密碼加密對應(yīng)生成的結(jié)果復(fù)制下來,后面會用到。

配置properties

將生成的加密串配置ENC(加密串)到application.properties中

#數(shù)據(jù)庫相關(guān)配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mytest?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8
# 加密所需的salt(鹽)
#jasypt.encryptor.password=Bt%XJ^n1j8mz
# 默認(rèn)加密方式PBEWithMD5AndDES,可以更改為PBEWithMD5AndTripleDES
#jasypt.encryptor.algorithm=PBEWithMD5AndDES
spring.datasource.username=ENC(d/qt1SXvttpkiugIzTYkxg==)
spring.datasource.password=ENC(rhT6VNpoRUkQYYOHAQ58V4/+fkj9CWfT)
spring.datasource.max-idle=10
spring.datasource.max-wait=10000
spring.datasource.min-idle=5
spring.datasource.initial-size=5

動態(tài)salt(鹽)值

解密秘鑰也在配置文件里頭啊,別人拿到你服務(wù)器上面的部署代碼后,不是很輕松的就可以解開這個密碼了?

為了防止salt(鹽)泄露,反解出密碼.刪除掉application.properties中的 jasypt.encryptor.password 可以在本地運行中加參數(shù)。如下圖:

或是在項目部署的時候使用命令傳入salt(鹽)值。

打包時隱藏jasypt.encryptor.password,就需要打包時maven命令增加參數(shù) clean package -Djasypt.encryptor.password=Bt%XJ^n1j8mz 。不加參數(shù)的話打包就會報錯。如下圖:

然后在部署時添加參數(shù) Djasypt.encryptor.password 。

部署時完整命令: java -jar -Djasypt.encryptor.password=Bt%XJ^n1j8mz hello-0.0.1-SNAPSHOT.jar

博客總結(jié)

數(shù)據(jù)加密,是一門歷史悠久的技術(shù),指通過加密算法和加密密鑰將明文轉(zhuǎn)變?yōu)槊芪?,而解密則是通過解密算法和解密密鑰將密文恢復(fù)為明文。它的核心是密碼學(xué)。數(shù)據(jù)加密仍是計算機系統(tǒng)對信息進行保護的一種最可靠的辦法。它利用密碼技術(shù)對信息進行加密,實現(xiàn)信息隱蔽,從而起到保護信息的安全的作用。

安全重于泰山。

源碼地址

github.com/toutouge/ja…

其他參考資料:

github.com/ulisesbocch…

以上就是Jasypt對SpringBoot配置文件加密的步驟的詳細(xì)內(nèi)容,更多關(guān)于Jasypt對SpringBoot配置文件加密的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Spring Security賬戶與密碼驗證實現(xiàn)過程

    Spring Security賬戶與密碼驗證實現(xiàn)過程

    這篇文章主要介紹了Spring Security賬戶與密碼驗證實現(xiàn)過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-03-03
  • SpringBoot配置shiro安全框架的實現(xiàn)

    SpringBoot配置shiro安全框架的實現(xiàn)

    這篇文章主要介紹了SpringBoot配置shiro安全框架的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • java連接Mongodb實現(xiàn)增刪改查

    java連接Mongodb實現(xiàn)增刪改查

    這篇文章主要為大家詳細(xì)介紹了java連接Mongodb實現(xiàn)增刪改查,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • spring boot 下支付寶的開箱既用環(huán)境

    spring boot 下支付寶的開箱既用環(huán)境

    這篇文章主要介紹了spring boot 下支付寶的開箱既用環(huán)境包括使用場景和使用技巧,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-10-10
  • java中的三種取整函數(shù)總結(jié)

    java中的三種取整函數(shù)總結(jié)

    下面小編就為大家?guī)硪黄猨ava中的三種取整函數(shù)總結(jié)。希望對大家有所幫助。一起跟隨小編過來看看吧,祝大家游戲愉快哦
    2016-11-11
  • 全方位解讀JDK和JRE的區(qū)別及聯(lián)系

    全方位解讀JDK和JRE的區(qū)別及聯(lián)系

    這篇文章主要介紹了JDK和JRE的區(qū)別及聯(lián)系,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Java引用隊列和虛引用實例分析

    Java引用隊列和虛引用實例分析

    這篇文章主要介紹了Java引用隊列和虛引用,結(jié)合實例形式分析了java引用隊列和虛引用相關(guān)概念、原理與使用方法,需要的朋友可以參考下
    2019-08-08
  • IDEA @SpringBootApplication報錯原因及解決

    IDEA @SpringBootApplication報錯原因及解決

    這篇文章主要介紹了IDEA @SpringBootApplication報錯原因及解決方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • JBoss5.x下配置Log4j方法介紹

    JBoss5.x下配置Log4j方法介紹

    這篇文章主要介紹了JBoss5.x下配置Log4j方法介紹,小編覺得挺不錯的,這里分享給大家,供需要的朋友參考。
    2017-10-10
  • Spring動態(tài)管理定時任務(wù)之ThreadPoolTaskScheduler解讀

    Spring動態(tài)管理定時任務(wù)之ThreadPoolTaskScheduler解讀

    這篇文章主要介紹了Spring動態(tài)管理定時任務(wù)之ThreadPoolTaskScheduler解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評論