如果您打算越級升級,還請務必閱讀以下各節的升級說明。Identity Manager 後續版本的升級說明也適用於您的升級。
若使用 Oracle 儲存庫,Identity Manager 8.0 與 8.1 儲存庫 DDL 會使用舊版 Oracle JDBC 驅動程式無法正確處理的資料類型。ojdbc14.jar 中的 JDBC 驅動程式無法正確讀取記錄表格中的所有欄。
您必須升級為 JDK 5 驅動程式的 ojdbc5.jar,Identity Manager 才能正常作業。
升級會自動將 User Extended Attributes 物件以及 UserUIConfig 物件的 QueryableAttrNames 與 SummaryAttrNames 元素轉換為 IDM Schema Configuration 物件。(ID-17784)
update.xml 程序檔範例包含匯入指令,可呼叫 IDMSchemaConfigurationUpdater 以轉換舊有的使用者模式配置物件。若要成功轉換舊有的使用者模式配置物件,請執行下列作業:
在 IDM 模式配置內,為使用者延伸屬性的每個延伸屬性名稱建立一個 IDMObjectClassAttribute 元素。
將對應至 UserUIConfig 內 SummaryAttrNames 元素各個值的所有 IDMObjectClassAttribute 標示為 ”summary’ (摘要)。
將對應至 UserUIConfig 內 QueryableAttrNames 元素各個值的所有 IDMObjectClassAttribute 標示為 ”queryable’ (可查詢)。
清空 UserUIConfig 內的 SummaryAttrNames 元素。
清空 UserUIConfig 內的 QueryableAttrNames 元素。
將名為 objectClass 的所有延伸屬性重新命名為 spml2ObjectClass。自 8.0 版開始,名為 objectClass 的舊有屬性會與 Identity Manager 模式中的核心屬性相衝突。
Identity Manager 8.0 提供某些專門用於 Roles 物件的新表格。您必須使用 db_scripts 目錄中所提供的範例程序檔進行模式變更、建立新表格結構,以及移動現有資料。
更新儲存庫資料庫表格定義之前,請將您的儲存庫表格完整備份。
請參閱 db_scripts/upgradeto8.0from71.DBMSName 程序檔,以取得更多資訊。
由於超級角色本身可能是巢式角色,因此請小心編輯 [角色] 表單中的超級角色欄位。超級角色與子角色欄位表示角色的巢式結構,以及其相關資源或資源群組。套用至使用者時,超級角色會包含與任何指定子角色相關的資源。超級角色欄位會隨即顯示,並指出包含所顯示之角色的所有角色。
在升級程序期間,Identity Manager 會分析系統上的所有角色,然後使用 RoleUpdater 類別更新任何缺少的子角色與超級角色連結。
若要檢查及升級不在升級程序中的角色,您可以匯入 sample/forms/RoleUpdater.xml 中提供的新 RoleUpdater 配置物件。
例如:
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE Waveset PUBLIC 'waveset.dtd' 'waveset.dtd'> <Waveset> <ImportCommand class='com.waveset.session.RoleUpdater' > <Map> <MapEntry key='verbose' value='true' /> <MapEntry key='noupdate' value='false' /> <MapEntry key='nofixsubrolelinks' value='false' /> </Map> </ImportCommand> </Waveset> |
其中:
verbose:在更新角色時提供詳細輸出。指定 false 可啟用角色的無訊息更新。
noupdate:可決定是否更新角色。指定 false 可取得僅列出將進行更新之角色的報告。
nofixsubrolelinks:可決定在缺少子角色連結時是否更新超級角色。此值預設為 false,且會修復連結。
需要檢視或編輯「使用者」或「角色」之 Identity Manager 模式的管理員,必須屬於 IDM 模式配置管理員群組,且必須具有 IDM 模式配置權能。
Identity Manager 中的 SPML 2.0 實作在 Sun Identity Manager 8.0 中有所變更。在先前的版本中,SPML 訊息所使用的 SPML objectclass 屬性會直接對映至 Identity Manager User 物件的 objectclass 屬性。objectclass 屬性現在改從內部對映至 spml2ObjectClass 屬性,且供內部其他用途使用。
在升級程序期間,objectclass 屬性值會自動為現有的使用者重新命名。如果您的 SPML 2.0 配置包含參照 objectclass 屬性的表單,則必須手動將這些參照變更為 spml2ObjectClass。
Identity Manager 在升級期間不會替代 spml2.xml 範例配置檔案。若使用 spml2.xml 配置檔案作為起點,請注意此檔案包含參照 objectclass 的表單,您必須將此參照變更為 spml2ObjectClass。請變更表單中的 objectclass 屬性 (供內部使用),但請勿變更目標模式中的 objectclass 屬性 (此為對外顯示的屬性)。
當您升級 Identity Manager 時,必須移除任何呼叫 UserUIConfig#getRepoIndexAttributes() 的自訂程式碼,或將其變更為呼叫 Type.USER#getInlineAttributeNames()。(ID-18051)
匯入 update.xml 可針對 RepositoryConfiguration 物件內的 Type.USER,將值從 UserUIConfig RepoIndexAttrs 轉換為 TypeDataStore 元素上 XML 屬性的值。update.xml 檔案包含 UserUIConfigUpdater.xml 檔案,其中內含匯入指令,可呼叫 UserUIConfigUpdater 以轉換 RepoIndexAttrs。轉換也會在 SystemConfiguration 中設定旗標,禁止再次轉換。
對 Type.USER 的內嵌屬性所做的任何未來變更,都應透過編輯 RepositoryConfiguration 物件來完成。若變更 Type.USER 的內嵌屬性,通常必須重新整理所有 Type.USER 物件。
只有在您重新啟動 Identity Manager 伺服器之後,對 RepositoryConfiguration 所做的變更才會在該伺服器上生效。