在Weblogic中恢复数据源的密码

有没有办法恢复我在Weblogic应用程序服务器中使用的jdbc数据源的密码? 我可以改变它,但是因为我不完全确定,在我们使用数据库的地方,这将是相当复杂的。

我有充分的pipe理权限的服务器,所以如果我不得不查找的东西,在configuration文件等,这将是好的。

我用了很多成功:

http://recover-weblogic-password.appspot.com/

或者你可以在本地做到这一点 – 从这里或代码 采取说明 可以在这里find :

/$BEA_HOME/wlserver_10.3/common/bin/wlst.sh decryptPassword.py /full/path/to/weblogic-domain/ "{3DES}s0meCr4zyH4$hedV4lue=" 

在weblogicconfiguration文件中,比如新版本的config.xml或* -datasource.xml,密码将被encryption。

 <password-encrypted>{3DES}oxUmxhBtdfe0h+0000oWHrl18jw==</password-encrypted> 

如果您的应用程序代码在Spring的applicationContext.xml文件中有一些内部configuration,那么您可能很幸运,

 <bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@xxxx:1522:portaldb" /> <property name="username" value="myUser" /> <property name="password" value="myPassword" /> 

这是Java版本:

 import weblogic.security.internal.SerializedSystemIni; import weblogic.security.internal.encryption.ClearOrEncryptedService; import weblogic.security.internal.encryption.EncryptionService; public class WeblogicDecrypt{ public static void main(String[] args){ String pass = "{3DES}**********"; EncryptionService service= SerializedSystemIni.getEncryptionService("c:\\yourDomain\\"); ClearOrEncryptedService clear = new ClearOrEncryptedService(service); String psw = clear.decrypt(pass); System.out.println("password:" + psw); } } 

在weblogic服务器lib文件夹中可以find需要的jar文件