web-dev-qa-db-ja.com

Weblogicでデータソースのパスワードを回復する

Weblogicアプリケーションサーバーで使用したjdbcデータソースのパスワードを回復する方法はありますか?変更することもできますが、データベースをどこで使用するかが完全にはわからないため、かなり複雑になります。

私はサーバーの完全な管理者権限を持っているので、何かを検索する必要がある場合は、構成ファイルなどで問題ありません。

1
dertoni

私はこれを多くの成功で使用しました:

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="
3
edwardsmatt

新しいバージョンのconfig.xmlや* -datasource.xmlなどのweblogic構成ファイルでは、パスワードは暗号化されます。

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

アプリケーションコードのSpring用のapplicationContext.xmlのようなファイルに内部構成がある場合は、この種の何かで幸運かもしれません

<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" />
1
JoseK

これは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は、weblogicサーバーのlibフォルダーにあります。

1
Ilario M.