jasypt-spring-boot-1.17: Не удалось расшифровать свойства, убедитесь, что пароли шифрования / дешифрования совпадают - PullRequest
0 голосов
/ 03 октября 2018

У меня есть jasypt-spring-boot-1.17 с версией весны "4.2.5.RELEASE" и версией весны загрузки "1.5.3.RELEASE".

Я использую первый метод с этого сайта (https://github.com/ulisesbocchio/jasypt-spring-boot), поскольку я использую @SpringBootApplication в своем классе application.java.

Я провел первое тестирование. 1. Я использовал это обозначение @PropertySource ("classpath: sampleservices.yml") или @PropertySource("classpath: sampleservices.properties") в моем ApplicationMain.java. 2. Я сохранил пароль ENC () в отдельном файле, либо sampleservices.yml, либо sampleservices.properties. 3. Я определил следующий код в своем приложенииФайл .yml. Я установил простое значение пароля для JASYPT_ENCRYPTOR_PASSWORD в переменной среды. Тест прошел успешно.пароль хранится в следующем порядке в моем файле application.yml. Пожалуйста, дайте мне знать, что именно я должен реализовать для того, чтобычтобы процесс расшифровки прошел успешно.Мне нужно использовать этот расшифрованный пароль для входа в БД.

Я изменил этот код @PropertySource ("application.yml"), но я не знаю, как добраться до поля пароля здесь.

Из файла application.yml: Spring: профили: пример источника данных: имя класса драйвера: com.mysql.jdbc.Driver URL: jdbc: mysql: имя пользователя abc: пароль пользователя: 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!

1 Ответ

0 голосов
/ 27 июля 2019

У меня была такая же проблема на весенней загрузке 2.1.3.Но позже я узнал, что это был мой глупый случай.Я просто неправильно понимаю значение параметра "input" и "password".Когда я зашифровывал в командной строке, я думал, что «ввод» означает ключ, тогда я меняю значение между двумя из них при запуске приложения.

Итак, помните:

input = [yourреальный пароль]

пароль = [это ключ jasypt]

Если это не ваша основная причина, следует учитывать следующее: когда вы шифруете пароль в Windows, он может быть не в состояниииспользовать на Linux.Вам может потребоваться шифрование в Linux, когда необходимо запустить приложения в Linux.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...