問題描述
WebLogic Server 不啟動,并拋出與管理密碼、管理授權(quán)或 LDAP 有關(guān)的錯誤。
|
?
故障排除 請注意,并非下面所有任務(wù)都需要完成。有些問題僅通過執(zhí)行幾項(xiàng)任務(wù)就可以解決。
快速鏈接 為什么發(fā)生此問題? 要啟動 WebLogic Server 實(shí)例,必須提供擁有服務(wù)器啟動權(quán)限的用戶的 Credential。 將根據(jù)某個安全 Realm(即 File Realm、LDAP、RDBMS LDAP 等)檢查 Credential。如果啟動時提供的信息與安全 Realm 中的信息不匹配,或安全 Realm 損壞,WebLogic Server 將不會啟動。
下面是在若干種情況下查明故障和解決問題的方法。
啟動身份無效(WLS 7.0 和 WLS 8.1) 啟動 WebLogic Server 時拋出以下錯誤:
|
The WebLogic Server did not start up properly. Reason: weblogic.security.SecurityInitializationException: Authentication denied: Boot identity not valid;
|
該錯誤表明啟動身份文件 (boot.properties) 中的用戶名和/或密碼無效。可能是在創(chuàng)建啟動身份文件后更改過啟動身份。請使用正確的用戶名和密碼編輯和更新啟動身份文件。首次使用更新后的啟動身份文件啟動服務(wù)器時會將這些新值加密。 解決方法: 以明文形式更改 boot.properties 中的參數(shù)值。“boot.properties”通常位于域根目錄中。 例如:
|
username=weblogic password=weblogic812 |
設(shè)置屬性后,重新啟動服務(wù)器。 返回頁首
內(nèi)嵌的 LDAP:丟失管理密碼(WLS 7.0 和 WLS 8.1) 管理密碼已丟失。 解決方法: 由于沒有覆蓋用戶 ID 密碼的方法,因此必須創(chuàng)建新的管理員用戶 ID,然后使用它來啟動 WebLogic。以下是丟失管理員密碼后恢復(fù)管理用戶的步驟。 假定創(chuàng)建了一個用戶 ID“adminuser”,密碼是“weblogic” - 將目錄更改為域目錄:cd mydomain
- java -cp D:\bea\weblogic615\server\lib\weblogic.jar weblogic.security.utils.AdminAccount adminuser weblogic . (注意:命令的末尾有一個句點(diǎn))
- rm myserver/ldap/DefaultAuthenticatormyrealmInit.initialized
- rm boot.properties(如果有)
- 以“adminuser”為管理員用戶 ID 重新啟動管理服務(wù)器
返回頁首 ?
內(nèi)嵌的 LDAP:更改管理密碼后被管服務(wù)器無法啟動(WLS 7.0 和 WLS 8.1) WebLogic Server 無法正常啟動。 拋出了異常:
|
weblogic.management.configuration.ConfigurationException: [Configuration Management:150021]The admin server failed to authenticate the identity of the user weblogic starting the managed server. The reason for the error is .
|
解決方法: 如果更改管理密碼時被管服務(wù)器有故障,就會出現(xiàn)該異常。 刪除被管服務(wù)器中的 ldap 目錄。 LDAP 目錄位于被管根目錄下,名稱是 ldap。 如果被管服務(wù)器名稱為 myManaged1,則 LDAP 目錄將是 ./myManaged1/ldap
WebLogic Server 與 LDAP 服務(wù)器連接失敗 拋出錯誤,說明 WLS 與 LDAP 服務(wù)器連接失敗。可能的成因是 LDAP Server 未啟動或主機(jī)地址和/或端口無效?
|
<13 juil. 2004 16 h 42 CEST> <Debug> <SecurityDebug> <000000> <new LDAP connection to host localhost port 389 use local connection is false> <13 juil. 2004 16 h 42 CEST> <Debug> <SecurityDebug> <000000> <created new LDAP connection LDAPConnection { ldapVersion:2 bindDN:""}> <13 juil. 2004 16 h 42 CEST> <Debug> <SecurityDebug> <000000> <connection failed netscape.ldap.LDAPException: failed to connect to server ldap://localhost:389 (91)>
|
解決方法:
- 驗(yàn)證 LDAP 服務(wù)器是否已啟動
- 驗(yàn)證主機(jī)地址和端口是否有效
返回頁首
LDAP 服務(wù)器:連接錯誤(錯誤 49)
|
<30 juin 2004 15 h 07 CEST> <Debug> <SecurityDebug> <000000> <new LDAP connection to host localhost port 389 use local connection is false> <30 juin 2004 15 h 07 CEST> <Debug> <SecurityDebug> <000000> <created new LDAP connection LDAPConnection { ldapVersion:2 bindDN:""}> <30 juin 2004 15 h 07 CEST> <Debug> <SecurityDebug> <000000> <connection failed netscape.ldap.LDAPException: error result (49)>
|
解決方法: 提供的用于連接 LDAP 服務(wù)器的用戶 ID 無效。 檢查 config.xml 并驗(yàn)證以下參數(shù): ? Credential="weblogic" ? Principal="uid=admin, ou=Administrators, ou=TopologyManagement, o=NetscapeRoot"? |
?????? <weblogic.security.providers.authentication.IPlanetAuthenticator ??????????? ControlFlag="SUFFICIENT" ??????????? Credential="weblogic" ??????????? GroupBaseDN="ou=groups" ??????????? Name="Security:Name=RealmIPlanetAuthenticator" ??????????? Principal="uid=admin, ou=Administrators, ou=TopologyManagement, o=NetscapeRoot" ??????????? Realm="Security:Name=Realm" UserBaseDN="dc=bea,dc=com"/>
|
要解決該問題,請使用以下方法之一更正 uid 或密碼 (Credential),然后重新啟動 WebLogic Server。
- 編輯 config.xml 并更改 uid 或密碼,然后重新啟動
- 將 config.xml.booted 復(fù)制到 config.xml,重新啟動服務(wù)器,然后更改 Credential(uid/密碼)
返回頁首
LDAP 服務(wù)器:WebLogic 管理用戶啟動服務(wù)器時被拒絕 WebLogic Server 管理用戶在啟動服務(wù)器時可能遭到拒絕。三個可能的成因如下:
- 與 LDAP 連接時發(fā)生錯誤 32
- 與 LDAP 連接時身份驗(yàn)證失敗
- 不允許用戶 XXXXXX 啟動服務(wù)器
1. 與 LDAP 連接時發(fā)生錯誤 32
|
<30 juin 2004 15 h 10 CEST> <Debug> <SecurityDebug> <000000> <connection succeeded> <30 juin 2004 15 h 10 CEST> <Debug> <SecurityDebug> <000000> <DN for user weblogic: uid=weblogic,dc=bea,dc=com> <30 juin 2004 15 h 10 CEST> <Debug> <SecurityDebug> <000000> <search("ou=groups", "(&(uniquemember=uid=weblogic,dc=bea,d c=com)(objectclass=groupofuniquenames))", base DN & below)> <30 juin 2004 15 h 10 CEST> <Debug> <SecurityDebug> <000000> <returnConnection conn:LDAPConnection {ldap://localhost:389 ?ldapVersion:3 bindDN:"uid=admin, ou=Administrators, ou=TopologyManagement, o=NetscapeRoot"}> netscape.ldap.LDAPException: error result (32)
|
解決方法: 在 LDAP 中未找到 WebLogic 應(yīng)在與 LDAP 連接時使用的 LDAP 用戶(本例中為“weblogic”),因此必須創(chuàng)建該用戶。 關(guān)于創(chuàng)建用戶 ID 的方法,請參考 LDAP 服務(wù)器文檔。
2. 與 LDAP 連接時身份驗(yàn)證失敗
|
<30 juin 2004 15 h 29 CEST> <Debug> <SecurityDebug> <000000> <returnConnection conn:LDAPConnection {ldap://localhost:389 ?ldapVersion:3 bindDN:"uid=admin, ou=Administrators, ou=TopologyManagement, o=NetscapeRoot"}> javax.security.auth.login.FailedLoginException: [Security:090302]Authentication Failed: User admin denied
|
解決方法: config.xml. 中的管理用戶密碼錯誤。
更改 config.xml 中的“credential”以使用正確的密碼。
<weblogic.security.providers.authentication.IPlanetAuthenticator ??????????? Credential="weblogic" ?
3. 不允許用戶 XXXXXX 啟動服務(wù)器
|
<30 juin 2004 16 h 40 CEST> <Critical> <Security> <BEA-090404> <User weblogic is not permitted to boot the server; The server policy may have changed in such a way that the user is no longer able to boot the server. Reboot the server with the administrative user account or contact the system administrator to update the server policy definitions.>
|
解決方法: LDAP 管理員組中沒有與 LDAP 連接所使用的 LDAP 用戶“weblogic”。 將此用戶添加到管理員組。有關(guān)說明,請參考 LDAP 文檔。
返回頁首
WebLogic 作為 NT 服務(wù):錯誤 1058 WLS 無法在 Windows 2000 上作為 Windows NT 服務(wù)啟動,并產(chǎn)生以下錯誤: “Could not start the <Service Name> service on \\<Computer Name>.Error 1058:The specified service is disabled and cannot be started.” 解決方法: 為該服務(wù)啟用 Windows 硬件配置文件。 以下是在 Windows 2000 上啟用的操作步驟:
- 依次單擊“開始”、“設(shè)置”、“控制面板”、“管理工具”、“服務(wù)”。
- 在“服務(wù)”窗口中,右鍵單擊相應(yīng)的服務(wù),然后選擇“屬性”。
- 單擊“登錄”選項(xiàng)卡,在窗口底部的白色區(qū)域中,可以將每個硬件配置文件在“已啟用”和“已禁用”間切換。通過單擊將相應(yīng)的配置文件設(shè)置為“已啟用”。
Microsoft 知識庫文章 175155(位于 http://support.microsoft.com/kb/q175155/)也介紹了以上步驟。
WebLogic 作為 NT 服務(wù):錯誤 1067 將 WLS 域作為 NT 服務(wù)安裝后,啟動它時發(fā)生“Microsoft Error: 1067”。 此錯誤提供的只是一般性信息,未提供任何與真正問題有關(guān)的線索。下面的情況可能會導(dǎo)致此“1067”錯誤及 WebLogic Server 無法作為服務(wù)正常啟動。 CONFIGURATION:安裝在 Windows NT 上的 WLS 6.x、7.x。
解決方法: 服務(wù)繼承系統(tǒng)屬性。如果系統(tǒng) PATH 變量中有空格,服務(wù)就無法啟動。舉一個例子,下面是系統(tǒng)路徑的一個片段:“C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;”。Visual Studio 目錄名中的空格會導(dǎo)致 beasvc 產(chǎn)生“1067”非描述性錯誤而啟動失敗。
清理系統(tǒng) PATH 環(huán)境變量,使之不包含空格。
返回頁首
File Realm 中的系統(tǒng)用戶密碼 (WLS 6.1) WebLogic Server 不能正常啟動。
|
Exception raised: java.lang.SecurityException: Authentication for user system denied ??????? at weblogic.security.SecurityService.initializeSuid(SecurityService.java:410) ??????? at weblogic.security.SecurityService.initialize(SecurityService.java:120) ??????? at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:421) ??????? at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:213) ??????? at weblogic.Server.main(Server.java:35) Reason: Fatal initialization exception
|
解決方法: File Realm 中的系統(tǒng)用戶密碼由于某種原因在客戶域中損壞,因而 WebLogic Server 無法啟動。
創(chuàng)建 fileRealm.properties 和 SerializedSystemIni.dat(位于域根目錄中)的備份。 如果有可以成功啟動的域,請將正常域中的以下文件復(fù)制到問題域:
- fileRealm.properties
- SerializedSystemIni.dat
備注:由于加密/解密需要由以上文件共同完成,因此兩個文件都必須復(fù)制,才能使加密/解密正常進(jìn)行。 返回頁首 如何設(shè)置調(diào)試標(biāo)志 設(shè)置調(diào)試標(biāo)志有助于解決許多 LDAP 問題。編輯 config.xml 文件并添加以下屬性: ? ??StdoutDebugEnabled="true" StdoutSeverityLevel="64" ? ? <ServerDebug DebugSecurityAdjudicator="true" DebugSecurityAtn="true" ??????? DebugSecurityAtz="true" DebugSecurityRoleMap="true" Name="myserver"/> 如下面所示:
|
?? <Server ListenAddress="" ListenPort="6151" Name="myserver" ??????? NativeIOEnabled="true" ReliableDeliveryPolicy="RMDefaultPolicy" ??????? ServerVersion="8.1.2.0" StdoutDebugEnabled="true" StdoutSeverityLevel="64"> ??????? <SSL Enabled="false" HostnameVerificationIgnored="false" ??????????? IdentityAndTrustLocations="KeyStores" Name="myserver"/> ??????? <ServerDebug DebugSecurityAdjudicator="true" ??????????? DebugSecurityAtn="true" DebugSecurityAtz="true" ??????????? DebugSecurityRoleMap="true" Name="myserver"/> ??? </Server> ??? <ServerDebug DebugSecurityAdjudicator="true" DebugSecurityAtn="true" ??????? DebugSecurityAtz="true" DebugSecurityRoleMap="true" Name="myserver"/>
|
已知的 WebLogic Server 問題 CR076945 (English)? WLS 7.0 - 由于 LDAP 文件可能已損壞而無法啟動 WLS。
此外,您可以定期查看所用 WLS 版本的“Release Notes”,了解 Service Pack 中的“Known Issues”或“Resolved Issues”的詳細(xì)信息及瀏覽與身份驗(yàn)證有關(guān)的問題。? 方便起見,下面提供了這些發(fā)行說明的鏈接: 使用搜索功能也可以搜索到“Release Notes”,還可以搜索到其它支持解決辦法及與 CR 有關(guān)的信息,如需要更多幫助?中所提到的內(nèi)容。如果客戶簽訂了技術(shù)支持合同,則可以登錄 http://support.bea.com/,登錄后會看到為 Solutions 和 Bug Central 提供的 Browse portlet,可在其中按產(chǎn)品版本瀏覽最新提供的 CR。
返回頁首 |
反饋 請給我們提供您的意見,說明此支持診斷模式“啟動 WLS 時出錯”一文是否有所幫助、您需要的任何解釋,以及對支持診斷模式的新主題的任何要求。
|
免責(zé)聲明: 依據(jù) BEA 與您簽署的維護(hù)和支持協(xié)議條款,BEA Systems, Inc. 在本網(wǎng)站上提供技術(shù)技巧和補(bǔ)丁供您使用。雖然您可以將這些信息和代碼與您獲得 BEA 授權(quán)的軟件一起使用,但 BEA 并不對所提供的技術(shù)技巧和補(bǔ)丁做任何形式的擔(dān)保,無論是明確的還是隱含的。 本文檔中引用的任何商標(biāo)是其各自所有者的財(cái)產(chǎn)。有關(guān)完整的商標(biāo)信息,請參考您的產(chǎn)品手冊。 |
|