I believe passwords will be held in config/txnPassStore.dat, so you’d need this as well however this is a binary file where passwords are encrypted (using the master password) and holds more than just the global variable passwords.
As such, you might want to rethink the implementation here.
Whilst you could store this in git, committing passwords into source control really isn’t a great idea, and even though these are encrypted, through the master password, if you checkout to a different dev environment, with a different master password, they won’t be able to decrypt the passwords and they’d need to be reset anyway.
Also, if everyone shares the same master passwords (quite common in dev), then that means anyone can decrypt this after pulling from source control, so doesn’t necessarily protect the password. You might also find that different environments have different passwords and quite possibly different master passwords, and operations teams might control the passwords to a QA/Stage/Prod environment.
Worse still, many people forget to change the master password (even from the default)!
A more simple alternative is to just check the global variable exists before using, and expect it to be defined in each environment. If it’s not defined throw out a warning of some sort. If passwords are different in each environment, you wouldn’t want to always redeploy these anyway. This way an ops team could set the value in production, and a dev team could set the value in dev. But this solution doesn’t work so well with devops automation of builds/etc.
In that context I’ve seen customers use password managers or config management tools for this sort of thing with the password being pulled into the server/environment on build as part of devops processes or first use/startup/etc from the config management server. This means passwords aren’t then ‘distributed’ throughout source control/etc and helps to avoid/remove creating potential attack vectors should a malicious actor get hold of the source.
Whenever passwords are used programmatically, you always need to think carefully about any consequences and proceed with caution.
#webMethods#webMethods-io-B2B#webMethods-io-Integration#Integration-Server-and-ESB#B2B-Integration