重置 WebLogic 管理员密码

重置 WebLogic 管理员密码

我在重置 weblogic 管理员用户密码时遇到了问题。以下是我按顺序执行的步骤。请帮助我理解为什么它不起作用

我在两台独立的计算机上运行了两个托管实例。

Step 1.关闭管理服务器实例(我没有关闭节点管理器和其他 2 个管理服务器实例

Step 2.设置环境变量

cd $DOMAIN_HOME/bin

. ./setDomainEnv.sh

Step 3.然后执行以下命令来创建新密码

cd ../security
mv DefaultAuthenticatorInit.ldift oldDefaultAuthenticator
java weblogic.security.utils.AdminAccount weblogic new_password . 

Step 4.备份现有boot.properties文件并创建一个新文件。还备份了管理服务器的数据目录。boot.properties使用以下配置创建一个新文件

使用纯文本用户名(weblogic_admin)和密码(new_password)。

cd ../servers/AdminServer
mv data data_old
cd security/
mv boot.properties oldboot.properties 

步骤 5。然后我重新启动了管理服务器。管理服务器已成功重新启动,我能够使用我的新用户名和密码登录管理控制台。当我尝试关闭管理服务器时出现问题。当我执行 sh stopWeblogicAdmin.sh 时,它将通过以下异常。但是,如果我终止管理服务器进程,那么我就可以毫无问题地启动管理服务器。我也可以登录到服务器。我还可以通过管理控制台停止和启动管理服务器实例。但为什么只有当我尝试停止时才会失败。有人能帮我吗

Stopping Weblogic Server...

Initializing WebLogic Scripting Tool (WLST) ...

Welcome to WebLogic Server Administration Scripting Shell

Type help() for help on available commands

Connecting to t3://jipsl13t:12001 with userid weblogic_admin ...
This Exception occurred at Fri Jan 18 12:20:09 GMT-00:00 2013.
javax.naming.AuthenticationException [Root exception is java.lang.SecurityException: User: weblogic_admin, failed to be authenticated.]
        at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:42)
        at weblogic.jndi.WLInitialContextFactoryDelegate.toNamingException(WLInitialContextFactoryDelegate.java:788)
        at weblogic.jndi.WLInitialContextFactoryDelegate.pushSubject(WLInitialContextFactoryDelegate.java:682)
        at weblogic.jndi.WLInitialContextFactoryDelegate.newContext(WLInitialContextFactoryDelegate.java:469)
        at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:376)
        at weblogic.jndi.Environment.getContext(Environment.java:315)
        at weblogic.jndi.Environment.getContext(Environment.java:285)
        at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:117)
        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
        at javax.naming.InitialContext.init(InitialContext.java:223)
        at javax.naming.InitialContext.<init>(InitialContext.java:197)
        at weblogic.management.scripting.WLSTHelper.populateInitialContext(WLSTHelper.java:520)
        at weblogic.management.scripting.WLSTHelper.initDeprecatedConnection(WLSTHelper.java:573)
        at weblogic.management.scripting.WLSTHelper.initConnections(WLSTHelper.java:313)
        at weblogic.management.scripting.WLSTHelper.connect(WLSTHelper.java:203)
        at weblogic.management.scripting.WLScriptContext.connect(WLScriptContext.java:61)
        at weblogic.management.scripting.utils.WLSTUtil.initializeOnlineWLST(WLSTUtil.java:147)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.python.core.PyReflectedFunction.__call__(Unknown Source)
        at org.python.core.PyMethod.__call__(Unknown Source)
        at org.python.core.PyObject.__call__(Unknown Source)
        at org.python.core.PyObject.invoke(Unknown Source)
        at org.python.pycode._pyx4.connect$1(<iostream>:16)
        at org.python.pycode._pyx4.call_function(<iostream>)
        at org.python.core.PyTableCode.call(Unknown Source)
        at org.python.core.PyTableCode.call(Unknown Source)
        at org.python.core.PyFunction.__call__(Unknown Source)
        at org.python.pycode._pyx15.f$0(/product/jip/jipsl11t/wls/eni132_domain/shutdown.py:6)
        at org.python.pycode._pyx15.call_function(/product/tsm/jipsl11t/wls/eni132_domain/shutdown.py)
        at org.python.core.PyTableCode.call(Unknown Source)
        at org.python.core.PyCode.call(Unknown Source)
        at org.python.core.Py.runCode(Unknown Source)
        at org.python.util.PythonInterpreter.execfile(Unknown Source)
        at weblogic.management.scripting.WLST.main(WLST.java:124)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at weblogic.WLST.main(WLST.java:29)
Caused by: java.lang.SecurityException: User: weblogic_admin, failed to be authenticated.
        at weblogic.common.internal.RMIBootServiceImpl.authenticate(RMIBootServiceImpl.java:116)
        at weblogic.common.internal.RMIBootServiceImpl_WLSkel.invoke(Unknown Source)
        at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
        at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
        at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
        at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
Problem invoking WLST - Traceback (innermost last):
  File "/product/jip/jipsl11t/wls/eni132_domain/shutdown.py", line 6, in ?
  File "<iostream>", line 22, in connect
  File "<iostream>", line 646, in raiseWLSTException
WLSTException: Error occured while performing connect : User: weblogic_admin, failed to be authenticated.
Use dumpStack() to view the full stacktrace

Done
Stopping Derby Server...

答案1

似乎您正在尝试使用另一个用户(不同于通过密码重置程序设置的用户)来停止 WebLogic。

请检查您的停止脚本是否stopWeblogicAdmin.sh有用户weblogic_admin及其密码。

然后将其更改为weblogic用户和新密码。

答案2

这种行为实际上是可以预料到的。托管服务器在启动期间从管理服务器复制本地 LDAP,因此托管服务器实际上拥有旧的 weblogic 用户。顺便说一句,如果您有 SerializedSystemIni.dat 中的数据,那么有办法解密存储在 boot.properties 中的密码,这样您就可以这样做,而不必重新创建主用户。

相关内容