Java 使用weblogic.security.Encrypt实用程序为不同的多个weblogic实例加密清除字符串

Java 使用weblogic.security.Encrypt实用程序为不同的多个weblogic实例加密清除字符串,java,security,encryption,weblogic,Java,Security,Encryption,Weblogic,我正在尝试使用weblogic.security.encrypt实用程序加密一些纯明文字符串,但不确定是否可以在不同的域或不同的weblogic实例(在不同的服务器上)上使用相同的加密密码 我遇到的情况是,我正在通过从Server1上WL实例的Domain1/bin运行该实用程序来生成加密密码。加密密码用于替换项目中的明文密码,然后我构建项目,因此加密密码包含在EAR文件中。当EAR文件从同一个域和同一个WebLogic服务器下部署/运行时,它们在使用前会被解密但是如果我将同一个EAR文件部署到

我正在尝试使用weblogic.security.encrypt实用程序加密一些纯明文字符串,但不确定是否可以在不同的域或不同的weblogic实例(在不同的服务器上)上使用相同的加密密码

我遇到的情况是,我正在通过从Server1上WL实例的Domain1/bin运行该实用程序来生成加密密码。加密密码用于替换项目中的明文密码,然后我构建项目,因此加密密码包含在EAR文件中。当EAR文件从同一个域和同一个WebLogic服务器下部署/运行时,它们在使用前会被解密但是如果我将同一个EAR文件部署到另一个域或另一台服务器上的另一个WEblogic实例会怎么样?密码会被解密吗?

任何帮助建议都将不胜感激


谢谢

正确答案是否定的。每次web逻辑服务器构建域时,它都会创建一个新的安全文件(SerializedSystemIni.dat)。这是用于解密的密钥文件。如果没有使用正确的文件进行加密,解密将失败(相信我,我知道!)

因此,简单的答案是,它不会

另一种方法是通过密钥文件加密来生成加密密码,并将密码存储在属性文件中。执行标准java加密,并将所有文件(包括密钥文件)都包含在EAR文件中。通过这种方式,可以查看密码,但密码将被加密,但您的应用程序会传递没有人能看到的明文


java非常灵活,几乎可以让您做任何事情,weblogic对此很酷。推荐使用后者。

谢谢,我接受了您的建议,并使用Apache.Commons.Codec.BASE64加密和解密密码。