最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot利用jasypt實(shí)現(xiàn)配置文件加密的完整指南

 更新時(shí)間:2025年08月27日 10:37:04   作者:HeyS1  
在實(shí)際開發(fā)中,若出于安全考慮不想暴露一些敏感的配置,如數(shù)據(jù)庫(kù)密碼等,就需要對(duì)配置文件進(jìn)行加密,下面我們來(lái)看看如何使用jasypt給配置文件加密吧

在實(shí)際開發(fā)中,若出于安全考慮不想暴露一些敏感的配置,如數(shù)據(jù)庫(kù)密碼等,就需要對(duì)配置文件進(jìn)行加密,這個(gè)開源工具就很好幫我們實(shí)現(xiàn)這個(gè)需求

思路就是把配置文件中的值手動(dòng)加密填上去,然后生產(chǎn)環(huán)境的秘鑰通過(guò)運(yùn)行參數(shù)傳遞,開發(fā)測(cè)試環(huán)境可以直接把秘鑰寫在配置文件

1.引入依賴

非Spring Boot的使用方式可查閱官方文檔

github.com/ulisesbocchio/jasypt-spring-boot

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

2.yml 加入配置

# 配置秘鑰
jasypt:
  encryptor:
    password: ${jasypt.encryptor.password:defaultPwd}

# 需要加密的字段(明文:123456),需要使用ENC() 包裹
db:
  password: ENC(bVv/e16L6qPO+1pqEPMUYT5uW1EjsERTCoIliqABM+YMr6WURdxPy26La8wHCxgF)

3.測(cè)試

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = OrderApplication.class)
public class DemoApplicationTest {

    @Autowired
    ConfigurableEnvironment environment;
    @Autowired
    StringEncryptor stringEncryptor;


    static {
        //指定運(yùn)行環(huán)境密碼
        System.setProperty("jasypt.encryptor.password", "password");
    }

    @Test
    public void testEnvironmentProperties() {
        //解密密文
        System.out.println(environment.getProperty("db.password"));
    }


    @Test
    public void encrypt() {
        //此處得到加密后的文本,放入yml
        System.out.println("密文: " + stringEncryptor.encrypt("123456"));
    }
}

方法補(bǔ)充

SpringBoot配置文件加密

依賴

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

設(shè)置秘鑰

jasypt.encryptor.password=秘鑰 開發(fā)環(huán)境可以直接在配置文件中指定,生產(chǎn)環(huán)境可以使用啟動(dòng)命理 --jasypt.encryptor.password=XXX 進(jìn)行配置 ####加密解密

  package com.itdfq.springboot;

import org.jasypt.encryption.StringEncryptor;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

/**
 * @author duanfangqin 2022/7/11 10:56
 * @implNote
 */
@SpringBootTest
public class JasyptTest {
    @Autowired
    private StringEncryptor stringEncryptor;

    @Test
    public void encrypt(){

        System.out.println(stringEncryptor.encrypt("qweasd123"));
    }
    @Test
    public void decrypt(){
        System.out.println(stringEncryptor.decrypt("zI16ovOHuYiPIQaFx9cVlJF30bg5h3ql"));
    }
}

配置文件密碼設(shè)置

#Redis服務(wù)器地址
spring.redis.host=119.3.234.108
#服務(wù)器密碼
spring.redis.password=ENC(nwElWn8r6aqVHDdAStIRiEXPAiE57qUF)

ENC(加密之后的密碼)

到此這篇關(guān)于SpringBoot利用jasypt實(shí)現(xiàn)配置文件加密的完整指南的文章就介紹到這了,更多相關(guān)SpringBoot jasypt配置文件加密內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Servlet編程第一步之從零構(gòu)建Hello?World應(yīng)用詳細(xì)步驟+圖解

    Servlet編程第一步之從零構(gòu)建Hello?World應(yīng)用詳細(xì)步驟+圖解

    本文詳細(xì)介紹了Servlet和maven的基本概念及其在JavaWeb開發(fā)中的應(yīng)用,首先解釋了Servlet是一個(gè)在服務(wù)器上處理請(qǐng)求的Java程序,然后介紹了maven作為管理和構(gòu)建Java項(xiàng)目的工具,需要的朋友可以參考下
    2024-10-10
  • Java的包裝類特性總結(jié)

    Java的包裝類特性總結(jié)

    這篇文章主要介紹Java的包裝類的一些特性,包裝類的作用,哪些類屬于包裝類等,文中有詳細(xì)的代碼示例,對(duì)我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-05-05
  • SpringBoot項(xiàng)目微信云托管入門部署實(shí)踐

    SpringBoot項(xiàng)目微信云托管入門部署實(shí)踐

    本文主要介紹了SpringBoot項(xiàng)目微信云托管入門部署實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Java集合List的方法及遍歷方式舉例

    Java集合List的方法及遍歷方式舉例

    這篇文章主要介紹了Java集合List的方法及遍歷方式的相關(guān)資料,List?是Java集合框架中的一種接口,繼承自Collection接口,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-05-05
  • Spring Security基于Customizer 的分布式權(quán)限配置最佳實(shí)踐指南

    Spring Security基于Customizer 的分布式權(quán)限配置最佳實(shí)踐指南

    本文介紹了如何通過(guò)引入“插拔式”設(shè)計(jì)模式來(lái)解決SpringSecurity開發(fā)中的痛點(diǎn),包括調(diào)度中心、標(biāo)準(zhǔn)協(xié)議和業(yè)務(wù)實(shí)現(xiàn)三個(gè)部分,并詳細(xì)介紹了這個(gè)機(jī)制的工作原理、優(yōu)點(diǎn)和注意事項(xiàng),感興趣的朋友跟隨小編一起看看吧
    2025-12-12
  • idea打開和讀取*properties文件亂碼的解決

    idea打開和讀取*properties文件亂碼的解決

    本文主要介紹了idea打開和讀取*properties文件亂碼的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09
  • JAVA利用HttpClient進(jìn)行POST請(qǐng)求(HTTPS)實(shí)例

    JAVA利用HttpClient進(jìn)行POST請(qǐng)求(HTTPS)實(shí)例

    下面小編就為大家?guī)?lái)一篇JAVA利用HttpClient進(jìn)行POST請(qǐng)求(HTTPS)實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起 小編過(guò)來(lái)看看吧
    2016-11-11
  • Java方法遞歸的形式和常見遞歸算法(方法遞歸結(jié)合File類查找文件)

    Java方法遞歸的形式和常見遞歸算法(方法遞歸結(jié)合File類查找文件)

    方法遞歸方法直接調(diào)用自己或者間接調(diào)用自己的形式稱為方法遞歸( recursion),遞歸做為一種算法在程序設(shè)計(jì)語(yǔ)言中廣泛應(yīng)用,這篇文章主要介紹了Java方法遞歸的形式和常見遞歸算法-方法遞歸結(jié)合File類查找文件,需要的朋友可以參考下
    2023-02-02
  • Java 基礎(chǔ)語(yǔ)法中的邏輯控制

    Java 基礎(chǔ)語(yǔ)法中的邏輯控制

    這篇文章主要介紹了Java 基礎(chǔ)語(yǔ)法中的邏輯控制的相關(guān)資料,需要的朋友可以參考下面文章內(nèi)容
    2021-09-09
  • Spring Boot如何使用Spring Security進(jìn)行安全控制

    Spring Boot如何使用Spring Security進(jìn)行安全控制

    要實(shí)現(xiàn)訪問控制的方法多種多樣,可以通過(guò)Aop、攔截器實(shí)現(xiàn),也可以通過(guò)框架實(shí)現(xiàn),本文將具體介紹在Spring Boot中如何使用Spring Security進(jìn)行安全控制。
    2017-04-04

最新評(píng)論

贡嘎县| 岱山县| 石台县| 理塘县| 道孚县| 叙永县| 津南区| 临西县| 江达县| 榕江县| 乳山市| 萍乡市| 开封县| 庆安县| 吴堡县| 青川县| 濮阳市| 连山| 盈江县| 璧山县| 阿拉善右旗| 牟定县| 类乌齐县| 阆中市| 将乐县| 清徐县| 河池市| 灵寿县| 武平县| 措美县| 阿拉尔市| 定边县| 武乡县| 怀宁县| 合作市| 宁陵县| 乃东县| 天峻县| 温州市| 南川市| 思南县|