SpringBoot項目mysql配置文件密碼加密(jasypt)

原由:由於我我的微博想要公開源碼,但數據庫配置文件會暴露在外面,又不想生產跟開發環境建來回切換,因此想到了加密數據庫密碼,因而問了羣裏的一個朋友小XX(原諒我不識字)html

通過:java

簡單粗暴,直接上代碼:git

1.須要引入依賴github

        <!-- 數據庫加密 -->
        <dependency>
            <groupId>com.github.ulisesbocchio</groupId>
            <artifactId>jasypt-spring-boot-starter</artifactId>
            <version>2.0.0</version>
        </dependency>

2.而後再yml或者properties中加入:spring

jasypt.encryptor.password=nmyswls

這個是鹽值數據庫

3.在測試類中maven

按 Ctrl+C 複製代碼ide

 

按 Ctrl+C 複製代碼spring-boot

這裏面的參數是你的密碼,而後返回來的是加密後的密碼:yyrqk9reuY5kScmS3D9mWQ==測試

4.將加密後的密碼貼到配置文件中,以下:

spring.datasource.password=ENC(yyrqk9reuY5kScmS3D9mWQ==)

這樣就ok了,但我感受若是你一不當心將你的密碼在測試代碼中提交上去,豈不是白加密了嗎,其實還有一種方法:

在你的maven倉庫中找到:D:\repository\org\jasypt\jasypt\1.9.2,這個包就是加密的包了

cmd在這個包下執行以下命令,它會返回你加密後的密碼:

java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="root" password=zhang algorithm=PBEWithMD5AndDES

其中:

input:是數據庫的明文密碼

password:是機密的鹽

algorithm:是加密的方式(默認)

而後在配置文件中把鹽加進去就ok了

jasypt.encryptor.password=nmyswls

結果:媽媽不再用擔憂個人密碼被盜了~

相關文章
相關標籤/搜索