Property substitutions no longer work in system configuration files in IDM (All versions)
The purpose of this article is to provide assistance if property substitutions do not work in system configuration files after upgrading IDM.
1 reader recommends this article
Symptoms
Variables that have been defined in boot.properties are no longer resolved when configuration data is retrieved with REST calls or openidm.read. For example, using an openidm.read() call with the variable in the form &{idm.variable.name}
does not result in the expected property value being substituted and instead the literal &{idm.variable.name} is returned.
Recent Changes
Upgraded IDM.
Causes
Changes have been made to how system properties are read and variables are no longer automatically substituted. This change makes it easier to administer configurations via REST since you can now configure one server, retrieve the configuration and push it to another server (previously this was not possible since the variables were automatically substituted meaning what you retrieved could not be applied to other servers). Additionally, this change improves security as there is no longer a risk of exposing substituted values over REST, which could contain sensitive data such as passwords.
Solution
This issue can be resolved by using the identityServer.getProperty
method to resolve variables in system configuration files.
Refer to the following links for further information:
See Also
Administering and configuring IDM
Related Training
N/A
Related Issue Tracker IDs
N/A