有時因為 OpenSSO Enterprise 無法刪除 Service Manager 資料存放區中的節點,而使 import-svc-cfg 子指令失敗。下列分析藍本會造成此問題:
使用遠端 Sun Java System Directory Server 作為配置資料存放區來配置 OpenSSO Enterprise。
使用 ssoadm export-svc-cfg 指令匯出服務 XML 檔案。
使用 ssoadm import-svc-cfg 指令重新匯入步驟 2 中取得的服務 XML 資料。
當詢問您是否刪除現有資料時,請選擇 [是]。
傳回下列錯誤訊息:Unexpected LDAP exception occurred。
解決方法。重新執行 ssoadm import-svc-cfg 指令,直到成功為止。
因為此異常,您無法以 get-realm 執行 ssoadm 指令。
Logging configuration class "com.sun.identity.log.s1is.LogConfigReader" failed com.sun.identity.security.AMSecurityPropertiesException: AdminTokenAction: FATAL ERROR: Cannot obtain Application SSO token. Check AMConfig.properties for the following properties com.sun.identity.agents.app.username com.iplanet.am.service.password Logging configuration class "com.sun.identity.log.s1is.LogConfigReader" failed com.sun.identity.security.AMSecurityPropertiesException: AdminTokenAction: FATAL ERROR: Cannot obtain Application SSO token. Check AMConfig.properties for the following properties com.sun.identity.agents.app.username com.iplanet.am.service.password AdminTokenAction: FATAL ERROR: Cannot obtain Application SSO token. Check AMConfig.properties for the following properties com.sun.identity.agents.app.username com.iplanet.am.service.password
檢查 amadmin 密碼是否與服務管理資料存放區的目錄管理員密碼不同。如果是,請套用下列解決方法。
解決方法。修改伺服器配置 XML,如下所示:
以 amadmin 身份登入 OpenSSO 主控台。
使用 ssoadm.jsp get-svrcfg-xml 取得伺服器配置 XML。
使用 encode.jsp 編碼 amadmin 密碼。
設定 XML 中兩處由 amadmin-password 代表的已編碼的密碼。例如:
<User name="User1" type="proxy"> <DirDN> cn=puser,ou=DSAME Users,dc=opensso,dc=java,dc=net </DirDN> <DirPassword> amadmin-password </DirPassword> </User> <User name="User2" type="admin"> <DirDN> cn=dsameuser,ou=DSAME Users,dc=opensso,dc=java,dc=net </DirDN> <DirPassword> amadmin-password </DirPassword> </User> <BaseDN> dc=opensso,dc=java,dc=net </BaseDN> </ServerGroup>
使用 ssoadm.jsp set-svrcfg-xml 設定修改的伺服器配置 XML。
在執行 ssoadm 公用程式的 setup 程序檔後,嘗試執行 ssoadm 會傳回 NoClassDefFoundError 錯誤。已升級的 OpenSSO Enterprise 實例會發生此問題。
解決方法。若要使用 JSS,請將 jss4.jar 增加至 classpath,並設定 LD_LIBRARY_PATH 環境變數。(如果您使用的是預設 JCE,則 classpath 中不需要 jss4.jar)。