typesafe config を使用すると、変数の置換と、キーと値の両方の完全なオーバーライドを実行できます。
config {
substitution.required = ${VAR}
should.not.override = "should not be overridden"
}
java -jar executable.jar -Dconfig.should.not.override="This is a security risk"
変数置換を行う機能により、展開環境 (ステージング、qa、prod) によって異なるデータベース URL など、外部化する必要がある構成を外部化できます。
ただし、潜在的なハッカーが悪意のある構成でアプリケーションを再起動した場合、何かを完全にオーバーライドする機能はセキュリティ上のリスクとなります。
変数の置換を許可することは可能ですが、全体のオーバーライドは抑制できますか???