durdin85 opened a new issue, #13352:
URL: https://github.com/apache/cloudstack/issues/13352

   ### problem
   
   If we follow the documented RabbitMQ credential encryption feature, 
literally copy paste the configuration from 
https://docs.cloudstack.apache.org/en/4.22.0.0/adminguide/events.html , the 
encrypted credentials are not being decrypted and RabbitMQ connection is not 
established. Instead the error messages are thrown to the management server log 
about missing classes.
   
   Upon further analysis it seems the jasypt library is incompatible with 
Spring 5+. There is a https://github.com/jasypt/jasypt/issues/25 and/or 
https://github.com/jasypt/jasypt/issues/35 . And so this is most probably the 
root cause as the class fails to load on Spring 5 which CloudStack is using.
   
   
   
   ### versions
   
   CloudStack 4.22.1.0 and also 4.22.0.1, Standard management server install, 
Ubuntu
   
   ### The steps to reproduce the bug
   
   STEPS TO REPRODUCE 
   1. Follow the AMQP configuration documentation at   
https://docs.cloudstack.apache.org/en/4.22.0.0/adminguide/events.html
   2. Add the documented Jasypt bean configuration to 
spring-event-bus-context.xml
   3. Restart cloudstack-management
   
   EXPECTED BEHAVIOUR:
   Encrypted credentials are decrypted and RabbitMQ connection is established.
   
   ACTUAL BEHAVIOUR:
   ``` 
   Error creating bean with name 
'org.apache.cloudstack.spring.lifecycle.ConfigDepotLifeCycle#0': Unsatisfied 
dependency expressed through field 'configDepotAdmin'; nested exception is 
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find 
class [org.jasypt.spring3.properties.EncryptablePropertyPlaceholderConfigurer] 
for bean with name 'propertyConfigurer' defined in file 
[/etc/cloudstack/management/META-INF/cloudstack/event/spring-event-bus-context.xml];
 nested exception is java.lang.ClassNotFoundException: 
org.jasypt.spring3.properties.EncryptablePropertyPlaceholderConfigurer
   /var/log/cloudstack/management/management-server.log.2026-06-03.gz:Caused 
by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find 
class [org.jasypt.spring3.properties.EncryptablePropertyPlaceholderConfigurer] 
for bean with name 'propertyConfigurer' defined in file 
[/etc/cloudstack/management/META-INF/cloudstack/event/spring-event-bus-context.xml];
 nested exception is java.lang.ClassNotFoundException: 
org.jasypt.spring3.properties.EncryptablePropertyPlaceholderConfigurer
   /var/log/cloudstack/management/management-server.log.2026-06-03.gz:Caused 
by: java.lang.ClassNotFoundException: 
org.jasypt.spring3.properties.EncryptablePropertyPlaceholderConfigurer
   ```
   
   ### What to do about it?
   
   Replace the implementation with a Spring 5-compatible alternative
   and/or document a supported workaround. Also, there is second issue with the 
PBEWithMD5AndDES is no longer considered secure, so the solution shall be 
future proof. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to