springboot配置文件加密方案

背景

springboot默認以fatjar形式打包,配置文件打在jar包裏面的,支持將application配置外置,其他自定義配置文件可以通過設置做到外置,但是隨之而來的就是配置文件敏感信息的安全問題,如果解決敏感信息的加密就是我們需要解決的問題。

嘗試解決

調研是否存在現有的解決方案,大部分人推推薦jasypt https://github.com/jasypt/jasypt,嘗試一下,的確可以起到加密的目的,簡單介紹以下如何使用。

如何使用

添加maven依賴

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

對敏感值加密

加密
java -cp jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input=“敏感值” password=密碼 algorithm=PBEWITHHMACSHA512ANDAES_256 ivGeneratorClassName=org.jasypt.iv.RandomIvGenerator

解密
java -cp jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI input=“敏感信息加密值” password=密碼 algorithm=PBEWITHHMACSHA512ANDAES_256 ivGeneratorClassName=org.jasypt.iv.RandomIvGenerator

配置加密密碼

在applicaiton.yml中增加如下配置
在這裏插入圖片描述

對敏感信息替換爲加密值

在這裏插入圖片描述

啓動項目測試

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章