目前我包括
jvmArg=-Djavax.net.ssl.keyStore=/cfg/secret
jvmArg=-Djavax.net.ssl.keyStorePassword=123456 a.b.c.Proxy
密码不以明文形式存储的替代表示法是什么?
您必须手动构建并通过以编程X509KeyManager
方式加载来初始化它。KeyStore
加载密钥库时,您调用它的load(...)
方法,该方法将接受密码(如果需要,您可以使用回调)。
如果您希望您的应用程序在无人值守的情况下运行,您的密码最多会被混淆,而不是高度加密(因为您的应用程序需要能够在需要时解密它而无需进一步的密码)。值得付出努力,但并非总是如此(因为攻击者可能只是能够获得该混淆版本并轻松对其进行去混淆)。
(JVM args 的问题之一是它们可能在进程参数列表中可见,具体取决于您的环境。在应用程序启动时设置系统属性在某些情况下可能会有所帮助。)