10.7 升級 Identity Applications

本節提供關於升級 Identity Applications 和支援軟體的資訊,其中包括更新以下元件的內容:

  • Identity Manager 使用者應用程式

  • Self-Service Password Reset (SSPR)

  • Tomcat、JDK 和 ActiveMQ

  • PostgreSQL 資料庫

  • One SSO Provider (OSP)

    重要:Identity Manager 4.8 要求將 Identity Applications 和 OSP 安裝在同一部電腦上。升級至此版本時,請使用升級 Identity Applications 時安裝的 OSP,然後將現有 OSP 伺服器中的 OSP 設定複製到新的 OSP 伺服器。如需詳細資訊,請參閱 Identity Applications 元件的升級後任務

本節提供關於以下主題的資訊:

10.7.1 升級注意事項

Identity Applications 升級程序可能會因您升級 Identity Applications 元件的方式而異。在升級 Identity Applications 之前,請注意以下事項:

  • 在開始升級 Identity Applications 之前,如果您使用 Oracle 或 MS SQL 資料庫,則必須建立 igaworkflowdb,並向擁有這些資料庫的 idmadmin 使用者指定所有特權。

  • 如果將 Identity Applications 和 SSPR 安裝在不同的伺服器上,則您可以選擇單獨升級 SSPR。

  • 在升級期間,請確定驗證資料庫名稱和其他預設值,並視需要進行修改。

  • Identity Manager 支援在 Identity Applications 伺服器本地安裝 OSP。升級程式不支援將 OSP 獨立升級至此版本,在升級 Identity Applications 時,它會安裝 OSP 的新副本。若要將現有 OSP 設定還原至新安裝的 OSP,請參閱Identity Applications 元件的升級後任務 中的 One SSO Provider

    表 10-1 Identity Applications 的升級程序

    Identity Applications 部署

    升級程序

    Identity Applications、SSPR 和 OSP 安裝在同一部伺服器上

    若要升級所有元件,請依照升級 Identity Applications 中的步驟操作。

    Identity Applications 和 OSP 安裝在同一部伺服器上。SSPR 安裝在其他伺服器上。

    1. 若要升級 Identity Applications 和 OSP,請依照升級 Identity Applications 中的步驟操作。

    2. 若要升級其他伺服器上的 SSPR,請依照升級 SSPR 中的步驟操作。

    Identity Applications 未與 SSPR 和 OSP 安裝在同一部伺服器上。在這種情況下,可以將 SSPR 安裝在 Identity Applications 伺服器或單獨的伺服器上。但是,必須將 OSP 安裝在 Identity Applications 伺服器上。

    1. 若要升級 Identity Applications 和 OSP,請依照升級 Identity Applications 中的步驟操作。

    2. 若要升級其他伺服器上的 SSPR,請依照升級 SSPR 中的步驟操作。

    3. 啟動組態更新公用程式,並提供安裝了 OSP 的新伺服器的詳細資料。在本例中,新伺服器是安裝了 Identity Applications 的伺服器。如需詳細資訊,請參閱SSO 用戶端參數

10.7.2 系統要求

升級程序會為所安裝元件的目前組態建立備份。確定服務器具有足夠儲存備份的空間,另外還有可供升級的可用空間。如需詳細資訊,請造訪 NetIQ Identity Manager 技術資訊網站

10.7.3 瞭解升級程式

升級程序會從現有元件中讀取組態值。這些資訊包括 ism-configuration.propertiesserver.xmlSSPRConfiguration 和其他組態檔案。當您使用這些組態檔案時,升級程序會在內部呼叫指定元件的升級程式。此外,升級程式還會建立目前安裝的備份。

10.7.4 升級 PostgreSQL

升級 PostgreSQL 需要執行的步驟如下:

  1. 從 NetIQ 下載網站下載並解壓縮 Identity_Manager_4.8_Linux.iso

  2. 導覽至 /common/scripts 目錄。

  3. 執行以下指令:

    ./pg-upgrade.sh

  4. 指定以下詳細資料以完成安裝:

    現有 Postgres 的安裝位置: 指定 PostgreSQL 的安裝位置。預設位置為 /opt/netiq/idm/postgres/

    附註:確定 Postgres 使用者對 /opt/netiq/idm/postgres 目錄具有相應的許可權。

    現有的 Postgres 資料目錄: 指定 PostgreSQL 資料目錄所在的位置。預設位置為 /opt/netiq/idm/postgres/data

    現有的 Postgres 資料庫密碼: 指定 PostgreSQL 密碼。

    新的 Postgres 資料目錄: 指定新的 PostgreSQL 資料目錄。例如 /opt/netiq/idm/postgres_new/data

10.7.5 升級 Identity Applications 元件

升級 Identity Applications 的驅動程式套件

您必須停止 Tomcat,並將使用者應用程式驅動程式及角色與資源服務驅動程式的套件更新至最新版本。如需將套件升級至最新版本的資訊,請參閱《NetIQ Designer for Identity Manager Administration Guide》(NetIQ Designer for Identity Manager 管理指南) 中的「Upgrading Installed Packages」(升級安裝的套件)。

升級使用者應用程式驅動程式套件後,必須手動新增工作流程範本套件:

  1. 在 Designer 中,導覽至使用者應用程式驅動程式並選取「內容」。

  2. 依次按一下「套件」、

  3. 選取僅顯示適用的套件版本核取方塊。

  4. 選取建立工作流程範本

  5. 按一下確定,然後按一下完成以完成安裝。

  6. 部署使用者應用程式驅動程式。

重要:如果在升級使用者應用程式驅動程式的過程中安裝或升級了任何電子郵件通知範本,則需要部署預設通知集合物件。

升級 Identity Applications

下面的程序介紹如何升級 Identity Applications。

  1. 從 NetIQ 下載網站下載 Identity_Manager_4.8_Linux.iso

  2. 掛接下載的 .iso

  3. 執行以下指令:

    ./install.sh

  4. 通讀授權合約。

  5. 輸入 y 以接受授權合約。

  6. 指定是否要升級 Identity Applications。可用選項有 yn

  7. 如果您要繼續升級,請指定以下詳細資料:

    用於備份的 OSP 安裝資料夾

    僅當 OSP 和 Identity Applications 安裝在同一部伺服器上時才適用。

    指定用於儲存 OSP 備份資料的 OSP 備份資料夾。

    SSPR 安裝資料夾

    僅當 SSPR 和 Identity Applications 安裝在同一部伺服器上時才適用。

    指定 SSPR 安裝資料夾。

    在系統中未找到 SSPR。是否要安裝並設定?

    僅當 Identity Applications 和 SSPR 安裝在不同的伺服器上時才適用。

    如果您選取 y,將會在安裝了 Identity Applications 的伺服器上安裝 SSPR。您需要將現有的自訂設定複製到安裝 SSPR 的新伺服器上。

    • SSPR 組態密碼:指定 SSPR 組態密碼。

    • One SSO 伺服器 DNS/IP 位址:指定安裝了 OSP 的伺服器的 IP 位址。

    • One SSO 伺服器 SSL 連接埠:指定 OSP SSL 連接埠。

    如果您選取 n,將不會安裝 SSPR,但會升級 Identity Applications。

    使用者應用程式安裝資料夾

    指定使用者應用程式安裝資料夾。

    Identity Applications One SSO 服務密碼

    指定 One SSO 密碼。指定的密碼將更新您在組態更新公用程式中為所有用戶端設定的用戶端機密。如果需要,您可以從組態更新公用程式重設相關用戶端的密碼。如需詳細資訊,請參閱SSO 用戶端參數

    Identity Applications 資料庫 JDBC jar 檔案

    指定資料庫 JAR 檔案。例如,如果您要使用安裝在同一部伺服器上的 PostgresQL 資料庫,則現有資料庫 jar 檔案的預設位置為 /opt/netiq/idm/postgres/postgresql-9.4.1212.jar

    建立 Identity Applications 的綱要

    指定何時建立資料庫綱要。可用選項有現在啟動檔案。預設選項為現在

    附註:如果您要使用 msSQL 或 Oracle 並向 idmadmin 使用者指定對此資料庫的所有特權,則必須建立 igaworkflowdb

    Identity Applications 資料庫使用者密碼

    指定資料庫管理員密碼

    Identity Applications 資料庫管理員密碼

    指定資料庫管理員密碼。

  8. 啟動 Tomcat。如果您選擇立即建立資料庫綱要,請選取現在

    systemctl start netiq-tomcat.service

    (選擇性) 在升級期間,如果您選取啟動寫入檔案選項來建立資料庫綱要,則必須執行所需的步驟以將資料移轉至工作流程資料庫。以下各節提供了使用啟動寫入檔案選項時關於資料移轉的詳細資料。

  9. 重新啟動 NGINX 服務。

    systemctl restart netiq-nginx.service

資料庫啟動

重要:依照本節所述的程序,使用 Identity Manager 4.8 Linux 和 Windows ISO 檔案中隨附的工作流程移轉公用程式將資料移轉至工作流程資料庫。不過,Identity Applications Tools Patch 1 套件 (1.0.0.0100) 中現在提供了更新的工作流程移轉工具。此修補程式新增了一個工作流程移轉指令公用程式,其中的新選項可幫助您加快移轉速度。它還解決了移轉大型資料庫時資料庫移轉失敗的關鍵問題。可以從軟體授權和下載入口網站下載此修補程式。我們建議使用最新的工作流程移轉公用程式,以順利完成資料庫移轉。如需詳細資訊,請參閱《NetIQ Identity Manager 4.8 Identity Applications Tools Patch 1 Release Notes》(NetIQ Identity Manager 4.8 Identity Applications Tools Patch 1 版本說明)。

使用啟動選項時移轉資料需要執行的步驟如下:

  1. <掛接 ISO 的位置>/user_application/IDM_Tools/ 目錄中的 WorkflowMigration.zip 檔案複製到 /home 目錄,然後解壓縮該檔案。

  2. jdbc.jar (例如 sqljdbc42.jar) 檔案複製到 /home/WorkflowMigration/WEB-INF/lib/ 目錄中,並將該檔案重新命名為 jdbcDriver.jar

  3. 停止角色與資源服務驅動程式。

  4. 啟動 Tomcat。

  5. 執行以下指令以輸出資料:

    附註:確定資料庫使用者擁有修改資料庫所需的所有特權。

    [postgres]  /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e test.zip -surl jdbc:postgresql://ip:port/idmuserappdb -suser idmadmin -spwd ***** -sdb postgres
    [oracle] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e test.zip -surl jdbc:oracle:thin:@IP:1521:idmdb -suser idmadmin -spwd ***** -sdb oracle
    [mssql] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e test.zip -surl "jdbc:sqlserver://IP:1433;DatabaseName=idmuserappdb" -suser idmadmin -spwd ***** -sdb mssql
  6. 執行以下指令以輸入資料:

    [postgres]  /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i test.zip -durl jdbc:postgresql://ip:port/igaworkflowdb -duser idmadmin -dpwd ***** -ddb postgres
    [oracle]   /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i test.zip -durl jdbc:oracle:thin:@IP:1521:igaworkflowdb -duser idmadmin -dpwd ***** -ddb oracle
    [mssql] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i test.zip -durl "jdbc:sqlserver://IP:1433;DatabaseName=igaworkflowdb" -duser idmadmin -dpwd ***** -ddb mssql
  7. 啟動角色與資源服務驅動程式。

寫入檔案

使用寫入檔案選項時移轉資料需要執行的步驟如下:

  1. <掛接 ISO 的位置>/user_application/IDM_Tools/ 目錄中的 WorkflowMigration.zip 檔案複製到 /home 目錄,然後解壓縮該檔案。

  2. jdbc.jar (例如 sqljdbc42.jar) 檔案複製到 /home/WorkflowMigration/WEB-INF/lib/ 目錄中,並將該檔案重新命名為 jdbcDriver.jar

  3. 使用 pgAdmin 等管理工具執行 ua_databaseschema.sqlwfe_databaseschema.sql 程序檔,並驗證是否已正確建立綱要。

    附註:使用 pgAdmin 工具執行 ua_databaseschema.sqlwfe_databaseschema.sql 時,請務必將這兩個 SQL 檔案的第一行設為備註。例如,應在執行 SQL 檔案之前將 Starting Liquibase at Fri, 11 Oct 2019 15:59:26 IST (version 3.7.0 built at 2019-07-16 02:32:57) 行設為備註。

  4. 執行以下指令以輸出資料:

    附註:確定資料庫使用者擁有修改資料庫所需的所有特權。

    [postgres]  /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e test.zip -surl jdbc:postgresql://ip:port/idmuserappdb -suser idmadmin -spwd ***** -sdb postgres
    [oracle] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e test.zip -surl jdbc:oracle:thin:@IP:1521:idmdb -suser idmadmin -spwd ***** -sdb oracle
    
    [mssql] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -e test.zip -surl "jdbc:sqlserver://IP:1433;DatabaseName=idmuserappdb" -suser idmadmin -spwd ***** -sdb mssql
  5. 執行以下指令以輸入資料:

    [postgres]  /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i test.zip -durl jdbc:postgresql://ip:port/igaworkflowdb -duser idmadmin -dpwd ***** -ddb postgres
    [oracle]   /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i test.zip -durl jdbc:oracle:thin:@IP:1521:igaworkflowdb -duser idmadmin -dpwd ***** -ddb oracle
    [mssql] /opt/netiq/common/jre/bin/java -jar Workflow-Migration.jar -i test.zip -durl "jdbc:sqlserver://IP:1433;DatabaseName=igaworkflowdb" -duser idmadmin -dpwd ***** -ddb mssql
  6. 啟動 Tomcat。

升級 SSPR

在進階版中,如果 SSPR 未與 Identity Applications 安裝在同一部伺服器上,請使用此方法。

在標準版中,只能透過此方法來升級 SSPR。

若要升級 SSPR,請執行以下操作:

  1. 從 NetIQ 下載網站下載 Identity_Manager_4.8_Linux.iso

  2. 掛接下載的 .iso

  3. .iso 檔案的根目錄導覽至 sspr 目錄。

  4. 執行以下指令:

    ./install.sh

  5. 通讀授權合約。

  6. 輸入 y 以接受授權合約。

  7. 指定 y 以升級 SSPR。

  8. 指定 Identity Vault 管理員密碼並完成升級。

10.7.6 Identity Applications 元件的升級後任務

在開始使用 Identity Applications 之前,請執行以下任務:

  • 手動刪除先前版本的 Tomcat 和 ActiveMQ 服務。例如,執行以下指令:

    /etc/init.d/idmapps_tomcat_init

    /etc/init.d/idmapps_activemq_init

  • 您必須手動還原 Tomcat、SSPR、OSP 和 Kerberos 的自訂設定。

  • Identity Applications 伺服器的金鑰儲存區 (idm.jks) 中應存在 CN 為 Identity Applications 的證書。做為增強的 Java 安全措施的一部分,Identity Applications 現在需要可信證書才能與 OSP 通訊。

  • 使用現有的 Identity Applications 金鑰儲存區檔案將已簽署證書輸入至 idm.jks 中。例如:

    。/keytool -import -alias mycerts -keystore /opt/netiq/idm/apps/tomcat/conf/idm.jks -file /opt/certs/chap8.der

    附註:將 4.6.x 升級至 4.8 時需要執行此步驟。

  • 如果您是在叢集環境中升級 Identity Applications,則必須在升級 Identity Applications 之後執行以下步驟:

    • 導覽至 /opt/netiq/idm/apps/tomcat/conf 目錄,然後在 context.xml 檔案的 Context 標記中新增下面一行:

      <Manager notifyListenersOnReplication="true" expireSessionsOnShutdown="false" className="org.apache.catalina.ha.session.DeltaManager"/>
    • 導覽至 /opt/netiq/idm/apps/tomcat/conf 目錄,然後在 server.xml 檔案的 Cluster 標記中新增下面一行:

      <Channel className="org.apache.catalina.tribes.group.GroupChannel">
                  <Membership className="org.apache.catalina.tribes.membership.McastService"
                              address="228.0.0.4"
                              port="45564"
                              frequency="500"
                              dropTime="3000"/>
                  <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                            address="auto"
                            port="5000"
                            selectorTimeout="100"
                            maxThreads="6"/>
      
                  <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
                    <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
                  </Sender>
                  <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
                  <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor"/>
                  <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
                </Channel>
      
                <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
                       filter=".*\.gif|.*\.js|.*\.jpeg|.*\.jpg|.*\.png|.*\.htm|.*\.html|.*\.css|.*\.txt"/>
      
                <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                          tempDir="/tmp/war-temp/"
                          deployDir="/tmp/war-deploy/"
                          watchDir="/tmp/war-listen/"
                          watchEnabled="false"/>
      
                <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
  • 如果您的資料庫是透過 SSL 設定的,請在位於 /opt/netiq/idm/apps/tomcat/conf/ 路徑下的 server.xml 檔案中,以 sslmode=require 取代 ssl=true

    例如,將

    jdbc:postgresql://<postgres db>:5432/idmuserappdb?ssl=true

    變更為

    jdbc:postgresql://<postgres db>:5432/idmuserappdb?sslmode=require

Tomcat

  • 在叢集環境中,手動將 server.xml 中的 Cluster 標記取消備註,然後將第一個節點上 /opt/netiq/idm/apps/osp_backup_<日期> 中的 osp.jks 複製到所有節點上。

  • 如果您自訂了金鑰儲存區檔案,請在新 server.xml 檔案中包括正確的路徑。

SSPR

如果 Identity Applications 和 SSPR 部署在不同的伺服器上,而您選擇將現有的 SSPR 自訂設定還原到安裝了 SSPR 的新伺服器,請務必使用 ConfigUpdate 公用程式修改新 SSPR 伺服器上的 SSPR 設定。如需詳細資訊,請參閱 SSO 用戶端參數

One SSO Provider

如果在升級前的設定中,Identity Applications 和 OSP 部署在不同的伺服器上,請將現有的 OSP 設定複製到安裝了 OSP 的新伺服器 (Identity Applications 伺服器),然後在此伺服器上執行安裝套件中的 merge_jars 方法來還原設定。

  1. 在升級了 Identity Applications 的伺服器上停止 Tomcat(升級 Identity Applications 時會安裝 OSP)。

  2. 還原自訂設定。

    1. 導覽至現有 OSP 伺服器中的 OSP 安裝目錄,並找到 osp-custom-resource.jar 檔案。

      例如 /opt/netiq/backup_idm/osp/osp-extras/l10n-resources/osp-custom-resource.jar

    2. osp-custom-resource.jar 檔案複製到升級了 Identity Applications 的伺服器上的某個位置。

    3. 導覽至 <Identity_Manager_4.8_Linux.iso 掛接位置>/osp/scripts/merge_cust_loc.sh

      此程序檔包含用於將現有自訂設定合併到新安裝的 OSP 的 merge_jars 方法。

    4. 開啟指令提示符並執行以下指令:

      merge_jars ${IDM_BACKUP_FOLDER in the remote OSP server}/tomcat/lib/osp-custom-resource.jar ${IDM 4.8_OSP_INSTALLED_HOME}/osp-extras/l10n-resources/osp-custom-resource.jar)

      例如:

      merge_jars /opt/netiq/backup_idm/osp/osp-extras/l10n-resources/osp-custom-resource.jar /opt/netiq/idm/apps/osp/osp-extras/l10n-resources/osp-custom-resource.jar

      其中,backup_idm 目錄包含現有 OSP 伺服器中的 OSP 設定。

  3. 在安裝了 OSP 的新伺服器上啟動 Tomcat。

若要更新其他設定,請參閱SSO 用戶端參數

Kerberos

升級公用程式會在電腦上建立新的 Tomcat 資料夾。如果任何 Kerberos 檔案 (例如 keytabKerberos_login.config) 存放於舊 Tomcat 資料夾中,請從備份資料夾中將這些檔案複製到新 Tomcat 資料夾。

10.7.7 升級後驗證版本號碼

升級至 Identity Manager 4.8 後,請驗證元件是否已升級至以下版本:

  • Tomcat – 9.0.22

  • ActiveMQ – 5.15.9

  • Java – 1.8.0_222

  • One SSO Provider – 6.3.6

  • Self-Service Password Reset – 4.4.0.3