Есть ли способ восстановить пароль для источника данных jdbc, который я использовал на сервере приложений Weblogic? Я мог бы это изменить, но поскольку я не совсем уверен, где мы используем базу данных, это было бы довольно сложно.
У меня есть полные административные права для сервера, поэтому, если мне нужно что-то найти, в файлах конфигурации и т. Д., Это будет нормально.
Я использовал это с большим успехом:
http://recover-weblogic-password.appspot.com/
Или вы можете сделать это локально - Инструкции, взятые отсюда или Код можно найти здесь:
/$BEA_HOME/wlserver_10.3/common/bin/wlst.sh decryptPassword.py /full/path/to/weblogic-domain/ "{3DES}s0meCr4zyH4$hedV4lue="
это версия 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);
}
}
необходимые jar-файлы можно найти в папке lib сервера weblogic
В файлах конфигурации weblogic, таких как config.xml или * -datasource.xml в более новых версиях, пароли будут зашифрованы.
<password-encrypted>{3DES}oxUmxhBtdfe0h+0000oWHrl18jw==</password-encrypted>
Если код вашего приложения имеет некоторую внутреннюю конфигурацию в таких файлах, как applicationContext.xml для Spring, вам может повезти с чем-то в этом роде.
<bean id="myDataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@x.x.x.x:1522:portaldb" />
<property name="username" value="myUser" />
<property name="password" value="myPassword" />