It's not that the password cannot be set as a system property, it is that
interpolation (converting ${var} variables into their representation) is
only performed after secret decryption... so if you want your configuration
decrypter to work on values that may be held in system properties, then
your decrypter will have to do the variable expansion itself.Hope this helps, Rob On 22 December 2016 at 12:31, Adel Boutros <[email protected]> wrote: > Hello, > > > While using the broker, it seems the JDBC password in the case of a JDBC > Message Store cannot be passed as a system property. If I set the password > manually in the config.json, it works. > > Can you please check? (I can provide a patch if needed however I would > need to point me where it is in the code) > > > In the below example, JDBC_PASSWORD is never replaced by it's value (empty > string), instead the string "${JDBC_PASSWORD}" is passed > > > Start command > > --------------------- > > qpid-server.bat -props messaging.properties > > > messaging.properties > > ---------------------------- > > JDBC_URL=jdbc:derby:target/memdb-266521489264643;create=true > JDBC_USERNAME= > JDBC_PASSWORD= > > default/config/config.json > --------------------------------- > "type" : "JDBC", > "connectionUrl" : "${JDBC_URL}", > "username" : "${JDBC_USERNAME}", > "password" : "${JDBC_PASSWORD}", > > PS: > 1- I have my own Configuration Encryptor and I debugged it and noticed the > string "${JDBC_PASSWORD}" is passed instead of "" as an argument to the > decrypt method > 2- It works fine for the other properties (JDBC_URL, JDBC_USERNAME) > > Regards, > Adel > >
