91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring?Boot配置內容加密實現敏感信息保護的示例分析

發布時間:2021-11-25 21:18:22 來源:億速云 閱讀:150 作者:柒染 欄目:開發技術

今天就跟大家聊聊有關Spring Boot配置內容加密實現敏感信息保護的示例分析,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

為什么要加密?

可能很多初學者,對于配置信息的加密并不敏感,因為開始主要接觸本地的開發,對于很多安全問題并沒有太多的考慮。而現實中,我們的配置文件中,其實包含著大量與安全相關的敏感信息,比如:數據庫的賬號密碼、一些服務的密鑰等。這些信息一旦泄露,對于企業的重要數據資產,那是相當危險的。 所以,對于這些配置文件中存在的敏感信息進行加密,是每個成熟開發團隊都一定會去的事。

第一步:創建一個基礎的Spring Boot項目

第二步:設計一個參數和單元測試,用來輸出這個配置信息

準備加密的配置:

datasource.password=didispace.com

用來輸出配置信息的單元測試:

@Slf4j
@SpringBootTest
public class PropertiesTest {
 
    @Value("${datasource.password:}")
    private String password; 
    @Test
    public void test() {
        log.info("datasource.password : {}", password);
    }
 
}

執行這個單元測試,會輸出:

2021-08-13 22:28:45.506  INFO 70405 --- [           main] com.didispace.chapter15.PropertiesTest   : datasource.password : didispace.com

這里還沒開始加密,下面我們開始引入加密的操作!

第三步:在pom.xml中引入jasypt提供的Spring Boot Starter

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

在插件配置中加入:

<plugin>
    <groupId>com.github.ulisesbocchio</groupId>
    <artifactId>jasypt-maven-plugin</artifactId>
    <version>3.0.3</version>
</plugin>

第四步:在配置文件中加入加密需要使用的密碼

jasypt.encryptor.password=didispace

同時,修改要加密的內容,用DEC()將待加密內容包裹起來,比如:

datasource.password=DEC(didispace.com)

第五步:使用jasypt-maven-plugin插件來給DEC()包裹的內容實現批量加密。

在終端中執行下面的命令:

mvn jasypt:encrypt -Djasypt.encryptor.password=didispace

注意:這里-Djasypt.encryptor.password參數必須與配置文件中的一致,不然后面會解密失敗。

執行之后,重新查看配置文件,可以看到,自動變成了

datasource.password=

ENC(/AL9nJENCYCh9Pfzdf2xLPsqOZ6HwNgQ3AnMybFAMeOM5GphZlOK6PxzozwtCm+Q)

jasypt.encryptor.password=didispace

其中,ENC()DEC()一樣都是jasypt提供的標識,分別用來標識括號內的是加密后的內容和待加密的內容。

如果當前配置文件已經都是ENC()內容了,那么我們可以通過下面的命令來解密配置文件,查看原始信息:

mvn jasypt:decrypt -Djasypt.encryptor.password=didispace

該操作不會修改配置文件,只會在控制臺輸出解密結果,比如:

datasource.password=DEC(didispace.com)

jasypt.encryptor.password=didispace

第六步:此時,我們的配置文件中的敏感信息已經被ENC()修飾了,再執行一下單元測試,不出意外的話,依然可以得到之前一樣的結果:

2021-08-13 22:50:00.463  INFO 76150 --- [           main] com.didispace.chapter15.PropertiesTest   : datasource.password : didispace.com

而此時,配置文件中已經是加密內容了,敏感信息得到了保護。

看完上述內容,你們對Spring Boot配置內容加密實現敏感信息保護的示例分析有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

德兴市| 青阳县| 政和县| 大埔区| 牙克石市| 深州市| 河曲县| 府谷县| 邓州市| 黔西| 安丘市| 襄城县| 瑞丽市| 嘉祥县| 商南县| 曲沃县| 建湖县| 临武县| 溆浦县| 嘉峪关市| 屏边| 利津县| 黔江区| 古丈县| 耒阳市| 临湘市| 集贤县| 昌图县| 大厂| 西乡县| 开江县| 铜鼓县| 土默特右旗| 阿荣旗| 喀喇沁旗| 澎湖县| 四会市| 辽中县| 天等县| 皮山县| 集贤县|