jasypt-Spring-boot-1.17:属性解密失败,请确保加密/解密密码匹配 [英] jasypt-spring-boot-1.17: Decryption of Properties failed, make sure encryption/decryption passwords match

查看:110
本文介绍了jasypt-Spring-boot-1.17:属性解密失败,请确保加密/解密密码匹配的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的jasypt-Spring-boot-1.17是Spring版本"4.2.5.RELEASE"和Spring Boot版本"1.5.3.RELEASE"。

我使用的是此网站的第一个方法(https://github.com/ulisesbocchio/jasypt-spring-boot),因为我在应用程序.java类中使用了@SpringBootApplication。

我做了第一次测试。 1.我在ApplicationMain.java中使用了这个符号@PropertySource("classpath:sampleservices.yml")或@PropertySource("classpath:sampleservices.properties")。 2.我将ENC()密码保存在一个单独的文件中,即sampleservices.yml或sampleservices.properties。 3.我在我的applation.yml文件中定义了以下代码。我在环境变量中设置了JASYPT_ENCRYPTOR_PASSWORD的普通密码值。测试是成功的。 jasypt: 加密器: Bean:加密Bean 密码:${JASYPT_ENCRYPTOR_PASSWORD:}

但是,真正加密的ENC()密码以以下嵌套方式存储在我的application.yml文件中。请让我知道我应该具体实现什么,才能使解密过程成功进行。我需要使用此解密密码登录到数据库。

我确实更改了此代码@PropertySource("application ation.yml"),但我不知道如何进入此处的密码字段。

来自application ation.yml文件: 弹簧: 纵断面:样例 数据源: 驱动程序类名称:com.mysql.jdbc.Driver 网址:jdbc:mysql:abc 用户名:userID 密码:enc(Xxxxxxxx)

I kept getting this error.

com.ulisesbocchio.jasyptspringboot.exception.DecryptionException: Decryption of Properties failed,  make sure encryption/decryption passwords match
at com.ulisesbocchio.jasyptspringboot.resolver.DefaultPropertyResolver.resolvePropertyValue(DefaultPropertyResolver.java:37) ~[jasypt-spring-boot-1.17.jar!/:?]

Thanks a lot!

推荐答案

我在Spring Boot 2.1.3上也遇到过同样的问题。但后来我发现这只是我的愚蠢的案子。我只是在";输入";和";password";参数含义之间理解错误。当我在命令提示符下加密时,我认为";input";表示密钥,然后在运行应用程序时在其中两个密钥之间交换值。

所以,请记住:

input=[您的真实密码]

密码=[是jasypt密钥]

如果这不是您的根本原因,则需要考虑的另一件事是,当您在Windows上加密密码时,它可能无法在Linux上使用。当需要在Linux上运行应用程序时,您可能必须在Linux上进行加密。

这篇关于jasypt-Spring-boot-1.17:属性解密失败,请确保加密/解密密码匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆