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

jasypt 集成SpringBoot 數(shù)據庫密碼加密操作

 更新時間:2020年11月18日 08:29:29   作者:夏日鳶尾  
這篇文章主要介紹了jasypt 集成SpringBoot 數(shù)據庫密碼加密操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

昨天看到一片文章,說是某某旗下酒店數(shù)據庫因為程序員不小心,把數(shù)據庫明文密碼上傳到了GitHub上,導致酒店數(shù)據注冊資料、入住信息,開房記錄被下載倒賣的消息。

作為程序員,開發(fā)的時候為了簡單,賬戶明明都設置很簡單,基本上數(shù)據庫密碼都是明文的,沒做什么操作,至少我待過的公司都是這樣,無論是測試環(huán)境還是線上環(huán)境,想想,這個也是一大安全隱患,在此,趁現(xiàn)在不忙,做些基于springboot的數(shù)據庫密碼加密。

1、pom.xml添加jar包(不同jdk選擇不同的版本):

<!-- jdk8 版本 整合jasypt對數(shù)據庫密碼加密 -->
<dependency>
  <groupId>com.github.ulisesbocchio</groupId>
  <artifactId>jasypt-spring-boot-starter</artifactId>
  <version>1.14</version>
</dependency>
<!-- jdk7版本-->
<dependency>
  <groupId>com.github.ulisesbocchio</groupId>
  <artifactId>jasypt-spring-boot-starter</artifactId>
   <version>1.5-java7</version>
</dependency>
<!-- jdk6版本-->
<dependency>
  <groupId>com.github.ulisesbocchio</groupId>
  <artifactId>jasypt-spring-boot-starter</artifactId>
   <version>1.5-java6</version>
</dependency>

2、window 窗口打開命令窗口,輸入命令:

java -cp D:\mavenspace\repository\org\jasypt\jasypt\1.9.2\jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="123456" password=allanpassword algorithm=PBEWithMD5AndDES

java –cp jar包所在路徑\jar包 org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input=”你的數(shù)據庫密碼” password=加密字段,隨意設置algorithm=默認PBEWithMD5AndDES加密

參數(shù)說明:

input =數(shù)據庫鏈接密碼

password=加密字段,隨意設置(配置文件中需要添加此密碼,相當于約定密碼)

algorithm= 算法,默認PBEWithMD5AndDES

運行命令后如圖:

----OUTPUT----------------------

Ekgkm+TzSmf7w7bcr90gMV6MAwj0waW+

OUTPUT 就是加密后的密碼,在配置項目密碼時結合ENC() 使用,如下圖:

3、項目中添加配置(以springboot為例),如圖:

# 數(shù)據庫密碼加密配置

jasypt:
 encryptor:
password: allanpassword
spring MySQL密碼寫法:
password: ENC(Ekgkm+TzSmf7w7bcr90gMV6MAwj0waW+)

4、springboot啟動類添加注解使其生效:

以上配置完成,啟動項目運行,查詢數(shù)據庫,成功!

補充知識:SpringBoot(Spring)使用jasypt處理加密問題

前景:為了防止配置文件里面的明文密碼泄露

1.引入依賴:(針對SpringBoot的)

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

2.配置文件配置參數(shù)

#這里可以理解成是加解密的時候使用的密鑰 (也可以考慮多配置認證信息jasypt.encryptor.algorithm)

jasypt.encryptor.password=youPassword

3.編寫測試類得到加密密碼

@Autowired 
StringEncryptor stringEncryptor; 
 
@Test 
public void encryptPwd() { 
  String result = stringEncryptor.encrypt("yourPassword"); 
  System.out.println(result);  
} 

4.修改配置文件里面的明文密碼

spring.datasource.druid.first.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.druid.first.url=
spring.datasource.druid.first.username=root

spring.datasource.druid.first.password=ENC(AfHowGWt0tQ6LXRoJ7GkAlImTKkfDg1Y1Er)

5.通過命令行運行 jasypt-1.9.2.jar 包命令來加密解密

1.在jar包所在目錄打開命令行,運行如下加密命令:

java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="明文" password=jasypt配置密碼 algorithm=PBEWithMD5AndDES

2. 使用剛才加密出來的結果進行解密,執(zhí)行如下解密命令:

java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI input="加密后的密文" password=jasypt配置密碼 algorithm=PBEWithMD5AndD

以上這篇jasypt 集成SpringBoot 數(shù)據庫密碼加密操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Springboot整合MybatisPlus的實現(xiàn)過程解析

    Springboot整合MybatisPlus的實現(xiàn)過程解析

    這篇文章主要介紹了Springboot整合MybatisPlus的實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • SpringBoot使用knife4j進行在線接口調試

    SpringBoot使用knife4j進行在線接口調試

    這篇文章主要介紹了SpringBoot使用knife4j進行在線接口調試,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Apache?Commons?BeanUtils:?JavaBean操作方法

    Apache?Commons?BeanUtils:?JavaBean操作方法

    這篇文章主要介紹了Apache?Commons?BeanUtils:?JavaBean操作的藝術,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • 利用Jackson解決Json序列化和反序列化問題

    利用Jackson解決Json序列化和反序列化問題

    Jackson是一個用于處理Json數(shù)據的Java庫,它提供了一系列功能,包括Json序列化和反序列化,所以本文就來講講如何利用利用Jackson解決Json序列化和反序列化的問題吧
    2023-05-05
  • SpringBoot數(shù)據層測試事務回滾的實現(xiàn)流程

    SpringBoot數(shù)據層測試事務回滾的實現(xiàn)流程

    這篇文章主要介紹了SpringBoot數(shù)據層測試事務回滾的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2022-10-10
  • Java并發(fā) 結合源碼分析AQS原理

    Java并發(fā) 結合源碼分析AQS原理

    這篇文章主要介紹了Java并發(fā) 結合源碼分析AQS原理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • Java調用Oracle存儲過程詳解

    Java調用Oracle存儲過程詳解

    這篇文章主要介紹了Java調用Oracle存儲過程詳解的相關資料,需要的朋友可以參考下
    2017-02-02
  • Java比較器實現(xiàn)方法項目案例

    Java比較器實現(xiàn)方法項目案例

    這篇文章主要介紹了Java比較器實現(xiàn)方法,結合具體項目案例形式分析了Java比較器相關排序操作技巧,需要的朋友可以參考下
    2019-03-03
  • SpringBoot中Formatter和Converter用法和區(qū)別小結

    SpringBoot中Formatter和Converter用法和區(qū)別小結

    本文主要介紹了SpringBoot中Formatter和Converter用法和區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • springboot學習之Thymeleaf模板引擎及原理介紹

    springboot學習之Thymeleaf模板引擎及原理介紹

    本文主要介紹一下SpringBoot給我們推薦的Thymeleaf模板引擎,這模板引擎呢,是一個高級語言的模板引擎,他的這個語法更簡單而且功能更強大,對springboot?Thymeleaf模板引擎相關知識感興趣的朋友一起看看吧
    2022-02-02

最新評論

方正县| 绥滨县| 邻水| 聂拉木县| 平山县| 曲靖市| 弋阳县| 翁牛特旗| 华坪县| 泰来县| 麻城市| 昌平区| 进贤县| 伊宁县| 金溪县| 清河县| 洪泽县| 米易县| 赤峰市| 永丰县| 泸西县| 华亭县| 三门县| 乐昌市| 眉山市| 罗江县| 小金县| 曲靖市| 施甸县| 汶川县| 蓬安县| 韶关市| 偃师市| 池州市| 五大连池市| 乌拉特前旗| 绥化市| 奉新县| 靖宇县| 寻甸| 贵定县|