在JVM启动参数中隐藏纯文本密码&引用;ps-ef | grep和#x27;javax.net.ssl.keystrepassword'&引用;

在JVM启动参数中隐藏纯文本密码&引用;ps-ef | grep和#x27;javax.net.ssl.keystrepassword'&引用;,jvm,passwords,startup,keystore,plaintext,Jvm,Passwords,Startup,Keystore,Plaintext,spring boot应用程序的启动参数包含信任和密钥库详细信息以及纯文本密码 现在我想对进程隐藏此纯文本密码详细信息: ps -ef | grep 'javax.net.ssl.keyStorePassword' 我已经创建了不同的属性文件,包含以下详细信息。如何在启动参数中添加此属性文件 javax.net.ssl.keyStore javax.net.ssl.keyStorePassword javax.net.ssl.keyStoreType javax.net.ssl.trustSt

spring boot应用程序的启动参数包含信任和密钥库详细信息以及纯文本密码

现在我想对进程隐藏此纯文本密码详细信息:

ps -ef | grep 'javax.net.ssl.keyStorePassword'
我已经创建了不同的属性文件,包含以下详细信息。如何在启动参数中添加此属性文件

javax.net.ssl.keyStore
javax.net.ssl.keyStorePassword
javax.net.ssl.keyStoreType
javax.net.ssl.trustStore
javax.net.ssl.trustStorePassword
javax.net.ssl.trustStoreType

可以使用文件预加载属性文件

代理代码将非常简单

StartupProps.java

import java.io.*;

public class StartupProps {

    public static void premain(String fileName) throws IOException {
        try (FileReader reader = new FileReader(fileName)) {
            System.getProperties().load(reader);
        }
    }
}
代理还需要一个清单文件:

MANIFEST.MF

Premain-Class: StartupProps
现在需要使用以下命令将代理与清单一起编译并打包到.jar中:

jar cvfm startupprops.jar MANIFEST.MF StartupProps.class
现在,您可以使用代理启动Java应用程序,并指定初始属性文件:

java -javaagent:startupprops.jar=/path/to/initial.properties <args>
java-javaagent:startupprops.jar=/path/to/initial.properties