首页 > 其他分享 >Springboot配置文件Properties密码加密

Springboot配置文件Properties密码加密

时间:2024-05-16 15:41:40浏览次数:20  
标签:Springboot 配置文件 jasypt jar spring org password Properties

1. 添加依赖

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

2. 启动类添加注解

@EnableEncryptableProperties
在main里添加(因为仍然带着password关键字)
System.setProperty("jasypt.encryptor.password", "xxxxx");
System.setProperty("jasypt.encryptor.algorithm", "xxxxx");
SpringApplication.run(UranusApplication.class, args);
注意:jasypt-spring-boot-starter的2.x版本angorithm默认是PBEWithMD5AndTripleDES 3.x默认是PBEWITHHMACSHA512ANDAES_256

或者在启动时添加参数

java -jar xxx.jar -Djasypt.encryptor.password=私钥

3. 下载jasypt,在MvnRepository里搜索org.jasypt,下载1.9.3版本jasypt-1.9.3.jar

 

4. 生成ENC:在终端

java -cp /path/jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI encrypt input='xxxx!' password=xxxx algorithm=PBEWithMD5AndTripleDES saltGeneratorClassName=org.jasypt.salt.RandomSaltGenerator ivGeneratorClassName=org.jasypt.iv.RandomIvGenerator keyObtentionIterations=1000 stringOutputType=base64 注意1:此版本的主类是JasyptPBEStringEncryptionCLI 注意2:mac终端的input里带感叹号可以使用单引号 注意3:如果angorithm使用PBEWITHHMACSHA512ANDAES_256则必须加上后面的参数      (saltGeneratorClassName,ivGeneratorClassName,keyObtentionIterations,stringOutputType) 注意4:jasypt-spring-boot-starter的3.x版本默认带参数,因此在生成ENC时,及时算法不用256,也必须带上后面的参数!!!

在Properties配置文件需要密码的地方

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

 

标签:Springboot,配置文件,jasypt,jar,spring,org,password,Properties
From: https://www.cnblogs.com/anenyang/p/18196063

相关文章

  • Springboot搭建dubbo+zookeeper本地项目
    1、下载zookeeper什么是zookeeper:https://www.cnblogs.com/Bernard94/p/17495775.html下载地址:https://dlcdn.apache.org/zookeeper/zookeeper-3.7.2/下载好解压后进入conf目录下,把‘zoo_sample.cfg’复制并改名为‘zoo.cfg’:修改配置文件的日志地址,修改到自己指定位置(非必......
  • SpringBoot笔记:SpringBoot启动参数配置
    /usr/local/jdk/jdk1.8.0_261/bin/java-jar-server\##服务模式,linux默认是server模式,window默认是client参数-XX:+HeapDumpOnOutOfMemoryError\##当OOM发生时自动生成HeapD......
  • IDEA2021.2.2使用Spring Initializr创建springboot项目
    使用SpringInitializr创建Springboot项目第一步:输入项目名称、项目所在路径等信息 在选择Java一项时,只有17、21、22选项。其中ProjectSDK一项,代表本地安装的JDK版本。Java一项,代表创建Spring工程时默认的JAVA版本。当选择最低值17时,点击下一步会弹出错误页面,提示“iThere......
  • yaml(yml)与properties文件的区别
    SpringBoot支持两种格式的配置文件,一种是yml,而另一种就是properties,默认的文件名为application.yml或者.propertiesproperties配置文件:key=value;yml配置文件key:value;yml更好的配置多种数据类型配置对象数据类型:student:id:1name:zhangsanage:18......
  • SpringBoot SpringCloud Spring Cloud Alibaba 版本对应关系
    最近公司的项目扫描出一些安全漏洞,于是让我给项目中的依赖升下级。有部分涉及到SpringBoot和SpringCloud,因此要考虑到兼容性,特此记录下查询各版本之间对应关系的方法。靠谱的方法还是要从官网得到,参考文章:工具篇--SpringBoot与SpringCloud的版本对应关系&SpringBoot与JDK对应关系......
  • 解决IDEA中.properties文件中文变问号(???)的问题(已解决_OK
    https://blog.csdn.net/m0_50808748/article/details/133185685问题背景构建SpringBoot项目时,项目结构中有一个application.properties文件。这个项目是SpringBoot一个特有的配置文件。内容如下(我写了一些日志的配置):写到这刚好到饭点,我打算回来吃个饭继续写,于是关闭了IDEA当我......
  • springboot国际化的使用(一_验证OK
    https://blog.csdn.net/weixin_39960529/article/details/86571962 步骤:1.首先建立一个meven项目2.在pom.xml中加如下依赖:<dependency>     <groupId>org.springframework.boot</groupId>     <artifactId>spring-boot-starter-thymeleaf</artifactI......
  • SpringBoot中使用MessageSource的getMessage获取i18n资源文件中的消息_OK
    https://www.cnblogs.com/badaoliumangqizhi/p/13608623.html 场景springboot默认就支持国际化的,而且不需要你过多的做什么配置,只需要在resources/下创建国际化配置文件即可,注意名称必须以messages开始。messages.properties(默认的语言配置文件,当找不到其他语言的配置的时候......
  • 【JavaWeb】前后端分离SpringBoot项目快速排错指南
    1发起业务请求打开浏览器开发者工具,同时显示网络(Internet)和控制台(console)接着,清空控制台和网络的内容,如下图然后,点击你的业务按钮,发起请求。首先看控制台有没有报错信息,这是最直观的,看不懂英文就去翻译一下,百度一下如果控制台的信息并没有什么价值,或者指明是后端的问题,那么......
  • IDEA社区版(IDEA Community Edition)创建Springboot父子项目
    1.因为社区办不支持使用springSpringInitializr的方式创建项目,但是我们可以考虑使用别的方式达到效果:创建方式有3种:第一种:使用https://start.spring.io/官方URL创建项目,再导入到IDEACommunityEdition(后面简称:ideaC)。具体使用自行百度。缺点:没办法自定义springboot的......