26.5 Identity Applicationsのアップグレード

このセクションでは、次のコンポーネントの更新を含む、アイデンティティアプリケーションおよびサポートするソフトウェアのアップグレードについて説明します。

  • Identity Managerユーザアプリケーション

  • OSP (One SSO Provider)

  • Self-Service Password Reset (SSPR)

  • Tomcat、JDK、およびActiveMQ

  • PostgreSQLデータベース

アップグレード後は、コンポーネントが次のバージョンにアップグレードされます。

  • Tomcat – 8.5.27

  • ActiveMQ – 5.15.2

  • Java – 1.8.0_162

  • One SSO Provider – 6.2.1

  • セルフサービスパスワードリセット – 4.2.0.4

このセクションでは、次のトピックについて説明します。

26.5.1 アップグレードプログラムについて

アップグレードプロセスは、既存のコンポーネントから設定値を読み込みます。この情報には、ism-configuration.properties、server.xml、SSPRConfiguration、および他の設定ファイルが含まれます。これらの設定ファイルを使用して、アップグレードプロセスにより、コンポーネントのアップグレードプログラムが内部的に起動します。また、このプログラムは現在のインストールのバックアップも作成します。

26.5.2 アップグレードの前提条件と考慮事項

アップグレードを実行する前に、次の考慮事項を確認してください。

  • Identity Managerはバージョン4.5.6にアップグレードされている: 4.5.6より前のバージョンからバージョン4.7にアップグレードまたは移行することはできません。Identity Manager 4.7にアップグレードする方法の詳細については、セクション 25.3, サポートされているアップグレードパスを参照してください。

  • システム要件: アップグレードプロセスでは、現在の設定およびアップグレード中に作成した一時ファイルを保存するために最低3GBの空きディスク容量が必要です。ご使用のサーバにバックアップを格納するための十分な容量と、アップグレードに使用可能な追加の空き容量があることを確認します。

    ルートパーティション以外の別のパーティションにIdentity Applicationsをインストールした場合は、そのパーティションにバックアップ設定を格納するための十分な容量があることを確認してください。また、/tmpディレクトリにログと一時ファイルを格納するための十分な容量があることを確認してください。このディレクトリに必要な容量がない場合、IATEMPDIR環境変数を十分な空き容量のあるパーティション上のディレクトリに設定してください。これにより、そのディレクトリにファイルを保存するようアップグレードプログラムがリダイレクトされます。

    IATEMPDIRを特定のディレクトリに設定するには:

    1. 端末を開き、次のコマンドを入力します。

      export IATEMPDIR=/opt/custom_tmp 

      ここで/opt/custom_tmpは、十分な空きディスク容量を持つディレクトリへのパスです。

      メモ:Identity Applications証明書(cacerts)をバックアップします。

    2. コマンドラインからアップグレードプログラムを起動します。

  • アプリケーションサーバとしてのTomcat: このバージョンのIdentity Managerは、アプリケーションサーバとしてTomcatのみをサポートします。

    Tomcat以外のアプリケーションサーバでIdentity Applicationsを実行している場合は、アップグレードを実行する前に、アプリケーションサーバをTomcatに移行します。詳細については、「Migrating from Websphere or JBoss to Tomcat」を参照してください。

  • データベースプラットフォームがアップグレードされている: このプログラムでは、アイデンティティアプリケーションのデータベースプラットフォームはアップグレードされません。データベースの現在のバージョンを、サポートされているバージョンに手動でアップグレードします。PostgreSQLデータベースのアップグレードについては、セクション 26.5.4, PostgreSQLデータベースのアップグレードを参照してください。

  • 役割とリソースサービスドライバパッケージがアップグレードされている: 詳細については、『NetIQ Designer for Identity Manager Administration Guide』の「Upgrading Installed Packages」を参照してください。

  • セルフサービスパスワードリセット: SSPR 4.0からアップグレードしている場合は、更新されたCATALINA_OPTSプロパティと-Dsspr.application.Pathが、SSPR設定の格納フォルダに設定されていることを確認します。

    次に例を示します。

    export CATALINA_OPTS="-Dsspr.applicationPath=/home/sspr_data

    アップグレードする前にSSPR LocalDBをバックアップします。LocalDBをエクスポートまたはダウンロードするには、次の手順を実行します。

    1. SSPRポータルに管理者としてログインします。

    2. ページの右上隅のドロップダウンメニューから、Configuration Manager (環境設定マネージャ)をクリックします。

    3. LocalDBをクリックします。

    4. Download LocalDB (LocalDBをダウンロード)をクリックします。

26.5.3 システム要件

アップグレードプロセスにより、インストールされたコンポーネントの現在の設定のバックアップが作成されます。ご使用のサーバにバックアップを格納するための十分な容量と、アップグレードに使用可能な追加の空き容量があることを確認します。

26.5.4 PostgreSQLデータベースのアップグレード

PostgreSQLデータベースをアップグレードするには、次のアップグレード前の手順を実行する必要があります。

  1. PostgreSQLサービスを停止します。

    su -s /bin/sh - postgres -c "/opt/netiq/idm/apps/postgres/bin/pg_ctl stop -w -D /opt/netiq/idm/apps/postgres/data"

  2. PostgreSQLサービスの既存のユニットファイルを無効にします。

    systemctl disable postgresql-9.6.service

  3. PostgreSQLサービスの既存のユニットファイルをクリーンアップします。

    rm /usr/lib/systemd/system/postgresql-9.6.service

    systemctl daemon-reload

    systemctl reset-failed

  4. バックアップディレクトリを作成し、既存のPostgreSQLディレクトリのバックアップをとります。

    次に例を示します。

    mkdir -p /home/backup

    cp -rvf /opt/netiq/idm/apps/postgres/ /home/backup/

  5. Identity_Manager_4.7_Linux.isoをマウントした場所に移動します。

  6. /common/packages/postgres/ディレクトリに移動します。

  7. PostgreSQLの新しいバージョンをインストールします。

    rpm -ivh netiq-postgresql-9.6.6-0.noarch.rpm

    メモ:PostgreSQLホームディレクトリが、以前のインストール先であるカスタムの場所から/opt/netiq/idm/postgres/に変更されます。

  8. PostgreSQLのインストール場所にdataディレクトリを作成します。

    mkdir -p <POSTGRES_HOME>/data。ここで、<POSTGRES_HOME>は/opt/netiq/idm/postgresです

    次に例を示します。

    mkdir -p /opt/netiq/idm/postgres/data

  9. 新しくインストールされたPostgreSQLディレクトリの許可を変更します。

    chown -R postgres:postgres <postgresディレクトリパス>

    次に例を示します。

    chown -R postgres:postgres /opt/netiq/idm/postgres

  10. postgresユーザホームディレクトリを作成します。

    たとえば、mkdir -p /home/users/postgresです。

  11. 新しく作成されたPostgreSQLユーザホームディレクトリの許可を変更します。

    chown -R postgres:postgres <postgresホームディレクトリパス>

    次に例を示します。

    chown -R postgres:postgres /home/users/postgres

  12. PostgreSQL homeディレクトリをエクスポートします

    export PGHOME=<postgresホームディレクトリパス>

    次に例を示します。

    export PG_HOME=/opt/netiq/idm/postgres

  13. PostgreSQパスワードをエクスポートします。

    export PGPASSWORD=<enter the database password>

  14. データベースを初期化します。

    su -s /bin/sh - postgres -c "LANG=en_US.UTF-8 <POSTGRES_HOME>/bin/initdb -D <POSTGRES_HOME>/data"

    次に例を示します。

    su -s /bin/sh - postgres -c "LANG=en_US.UTF-8 /opt/netiq/idm/postgres/bin/initdb -D /opt/netiq/idm/postgres/data"

  15. /etc/passwdファイルにあるpostgresユーザのホームディレクトリパスを/opt/netiq/idm/postgres/に変更します。

    1. /etc/ディレクトリに移動します。

    2. passwdファイルを編集します。

      vi /etc/passwd

    3. postgresユーザのホームディレクトリを/opt/netiq/idm/postgres/に変更します。

  16. /opt/netiq/idm/postgres/ディレクトリに移動します。

  17. postgresユーザとしてログインします。

    次に例を示します。

    su postgres

  18. 既存のデータを移行します。

    次に例を示します。

    /opt/netiq/idm/postgres/bin/pg_upgrade --old-datadir /opt/netiq/idm/apps/postgres/data/ --new-datadir /opt/netiq/idm/postgres/data/ --old-bindir /opt/netiq/idm/apps/postgres/bin --new-bindir /opt/netiq/idm/postgres/bin/

  19. postgresユーザとしてログアウトします。

  20. サーバネットワークを信頼するようpg_hba.confファイルを更新します。

    1. /opt/netiq/idm/postgres/data/ディレクトリに移動します。

    2. pg_hba.confファイルを編集します。

      vi pg_hba.conf

    3. pg_hba.confファイルに次の行を追加します。

      host all all 0.0.0.0/0 trust

  21. PostgreSQLインスタンスがlocalhost以外の他のネットワークインスタンスでリスンするようにするには、環境設定ファイルを更新します。

    1. /opt/netiq/idm/postgres/data/ディレクトリに移動します。

    2. postgresql.confファイルを編集します。

      vi postgresql.conf

    3. postgresql.confファイルに次の行を追加します。

      listen_addresses = '*'

      メモ:制限されているネットワークインタフェースでリスンするには、IPアドレスのカンマ区切りのリストを指定します。

  22. <postgresホームディレクトリパス>/dataの下にpg_logディレクトリを作成します。

    次に例を示します。

    mkdir -p /opt/netiq/idm/postgres/data/pg_log

  23. pg_logディレクトリの許可を変更します。

    chown -R postgres:postgres <postgresディレクトリパス>/data/pg_log

    次に例を示します。

    chown -R postgres:postgres /opt/netiq/idm/postgres/data/pg_log

  24. PostgreSQLサービスを開始します。

    systemctl start netiq-postgresql

    これにより、新しいPostgreSQLサービスが開始されます。

  25. (オプション) GUIから新しいpgAdminを起動します。

    1. scriptsディレクトリを、古いpostgresホームから新しいpostgresホームにコピーします。

      次に例を示します。

      cp -rvf /opt/netiq/idm/apps/postgres/scripts /opt/netiq/idm/postgres

    2. /opt/netiq/idm/postgres/scriptsディレクトリに移動します。

    3. launchpgadmin.shを編集して、古いPostgreSQLパスを新しいパスに置き換えます。

      /opt/netiq/idm/apps/postgres/を/opt/netiq/idm/postgresに置き換えます。

    4. /usr/share/applicationディレクトリに移動し、.desktopアプリケーションを編集してlaunchpgadmin.shの新しいパスを入力します。

      SLES: pg-pgadmin-9_6.desktopアプリケーションを編集して、EXECの値を新しいlaunchpgadmin.shパスに置き換えます。

      次に例を示します。

      "Exec=/opt/netiq/idm/apps/postgres/scripts/launchpgadmin.sh"の値を:"Exec=/opt/netiq/idm/postgres/scripts/launchpgadmin.sh"に変更します。

      RHEL: /usr/share/applicationに移動し、次の詳細を含むpg-pgadmin-9_6.desktopファイルを作成します。

      次に例を示します。

      [Desktop Entry]
      Version=1.0
      Encoding=UTF-8
      Name=pgAdmin 4
      Exec=/opt/netiq/idm/postgres/scripts/launchpgadmin.sh
      Icon=pg-pgadmin-9_6.png
      Terminal=false
      Type=Application
    5. システムから古いpostgresホームを削除します。

      rm -rf /opt/netiq/idm/apps/postgres/

    6. 変更を有効にするには、システムを再起動してください。

26.5.5 Identity Applicationsのドライバパッケージのアップグレード

このセクションでは、ユーザアプリケーションドライバ、役割およびリソースサービスドライバのパッケージを最新バージョンに更新する方法について説明します。Identity Applicationsをアップグレードする前に、このタスクを実行する必要があります。

  1. Designerで現在のプロジェクトを開きます。

  2. パッケージカタログ > パッケージのインポートの順に右クリックします。

  3. 適切なパッケージを選択します。たとえば、User Application Driver Base package (ユーザアプリケーションドライバベースパッケージ)です。

  4. OKをクリックします。

  5. [開発者]ビューでドライバを右クリックし、プロパティをクリックします。

  6. プロパティページでパッケージタブに移動します。

  7. 右上隅のパッケージを追加(+)記号をクリックします。

  8. パッケージを選択し、OKをクリックします。

  9. 役割およびリソースサービスドライバのパッケージをアップグレードするには、同様の手順を繰り返します。

    メモ:アップグレードされたIdentity Managerに、ユーザアプリケーションドライバ、役割およびリソースサービスドライバが接続されていることを確認します。

26.5.6 Identity Applicationsのアップグレード

メモ:Identity ApplicationsおよびSSPRが別のサーバにインストールされている場合は、SSPRを手動でアップグレードする必要があります。詳細については、SSPRのアップグレードを参照してください。

Identity Applicationsのアップグレード

次の手順では、Identity Applicationsをアップグレードする方法について説明します。

  1. NetIQダウンロードWebサイトからIdentity_Manager_4.7_Linux.isoをダウンロードします。

  2. ダウンロード済みの.isoをマウントします。

  3. 次のコマンドを実行します。

    ./install.sh

  4. 使用許諾契約を読みます。

  5. 使用許諾契約の条項を確認し、「y」と入力します。

  6. Identity Managerコンポーネントをアップグレードするかどうかを指定します。使用可能なオプションは、yおよびnです。

  7. Identity Applicationsを選択して、アップグレードを続行します。

  8. 次の詳細を指定します。

    SSPR Installation Folder (SSPRインストールフォルダ): SSPRインストールフォルダを指定します。

    User Application Folder (ユーザアプリケーションフォルダ): ユーザアプリケーションフォルダを指定します。

    Identity Applications One SSO Service Password (Identity ApplicationsのOne SSO Serviceパスワード): One SSOパスワードを指定します。

    Identity Applications Database JDBC jar file (Identity ApplicationsデータベースのJDBC jarファイル): データベースJARファイルを指定します。既存データベースjarファイルのデフォルトの場所は、/opt/netiq/idm/apps/postgres/postgresql-9.4.1212.jarです。

    Create Schema for Identity Applications (Identity Applicationsのスキーマの作成): データベーススキーマをいつ作成するかを指定します。使用可能なオプションは、Now、Startup、およびFileです。

SSPRのアップグレード

メモ:SSPRがIdentity ApplicationsおよびOSPとは異なるサーバ上にインストールされている場合は、SSPRを別途アップグレードする必要があります。

  1. セクション 5.11, インストールファイルのダウンロードの説明に従って、Identity_Manager_4.7_Linux.isoをダウンロードします。

  2. ダウンロード済みの.isoをマウントします。

  3. .isoファイルのルートディレクトリから、SSPRディレクトリに移動します。

  4. 次のコマンドを実行します。

    ./install.sh

  5. 使用許諾契約を読みます。

  6. 使用許諾契約の条項を確認し、「y」と入力します。

26.5.7 アップグレード後のタスク

  • configupdateユーティリティのRBPMからeDirectory SAMLへの設定パラメータが自動に設定されていることを確認します。

    1. configupdateユーティリティを起動します。

    2. SSOクライアント>RBPMの順に移動して、RBPMからeDirectory SAMLへの設定を自動に設定します。

    3. 変更内容を保存します。

    4. Tomcatを起動します。

  • OSPディレクトリの許可と所有権を変更します。

    chmod +x novlua:novlua /opt/netiq/idm/apps/osp

  • TomcatおよびActiveMQサービスの以前のバージョンを手動で削除します。

    /etc/init.d/idmapps_tomcat_init

    /etc/init.d/idmapps_activemq_init

Tomcat、SSPR、OSP、またはIdentity Applicationsのカスタマイズされた設定を手動で復元する必要もあります。

Java

アップグレードされたJREの場所(jre/lib/security/cacerts)に、古いJREの場所からのすべての証明書が存在していることを確認します。証明書がない場合、アップグレードされたJREのcacertsに証明書を手動でインポートします。

  1. keytoolコマンドを使用して、java cacertsをインポートします。

    keytool -import -trustcacerts -file Cerificate_Path -alias ALIAS_NAME -keystore cacerts

    メモ:アップグレード後、JREはアイデンティティアプリケーションのインストール場所に保存されます。例: /opt/netiq/idm/apps/jre。

  2. JREホームの場所を確認します。

    tomcat/bin/setenv.sh

  3. 設定更新ユーティリティを起動し、cacertsのパスを確認します。

Tomcat

  1. (状況によって実行)アップグレードプロセスによって前に作成されたバックアップからカスタマイズされたファイルを復元するには、次のタスクを実行します。

    • カスタマイズされたHTTPS証明書を復元します。これらの証明書を復元するには、バックアップしたserver.xmlから\tomcat\confディレクトリの新しいserver.xmlファイルにJava Secure Socket Extension (JSSE)のコンテンツをコピーします。

    • バックアップしたTomcatディレクトリから新しいTomcatディレクトリに設定ファイルをコピーしないでください。新しいバージョンのデフォルトの設定から開始し、必要に応じて変更します。詳細については、ApacheのWebサイトを参照してください。

      新しいserver.xmlファイルに、次のエントリがあることを確認します。

      <Connector port="8543" protocol="HTTP/1.1" 
             maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
             clientAuth="false" sslProtocol="TLS" 
             keystoreFile="path_to_keystore_file"
             keystorePass="keystore_password" />
      <!--
            <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
       -->

      または

      <Connector port="8543" protocol="org.apache.coyote.http11.Http11NioProtocol" 
             maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
             clientAuth="false" sslProtocol="TLS" 
             keystoreFile="path_to_keystore_file"
             keystorePass="keystore_password" />
      <!--
            <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
       -->

      メモ:クラスタ環境で、server.xmlのClusterタグを手動でコメント解除して、/opt/netiq/idm/apps/osp_backup_<date>にある最初のノードからすべてのノードにosp.jksをコピーします。

    • カスタマイズしたキーストアファイルがある場合は、新しいserver.xmlファイルに正しいパスを含めてください。

    • Identity Applicationsの証明書を、/opt/novell/eDirectory/lib64/nds-modules/jre/lib/security/cacertsにあるアイデンティティボールトにインポートします。

      たとえば、次のkeytoolコマンドを使用して、証明書をアイデンティティボールトにインポートすることができます。

      keytool -importkeystore -alias <keyalias> -srckeystore  <backup cacert> -srcstorepass changeit -destkeystore /opt/novell/eDirectory/lib64/nds-modules/jre/lib/security/cacerts
       -deststorepass changeit 
  2. (状況によって実行)ユーザアプリケーションに移動し、バックアップした設定を読み取ることにより、カスタマイズされた設定を手動で復元します。

識別情報アプリケーション

アップグレードプロセス中に作成したバックアップからカスタマイズされたIdentity Applicationsの設定を復元します。

アップグレードプログラムを実行する前に、カスタムコンテキストフォルダの名前をIDMProvに変更している場合は、configupdateユーティリティを使用してコンテキストフォルダ名を元のコンテキスト名に変更する必要があります。たとえば、元のカスタムコンテキスト名はIDMDevですが、名前をIDMProvに変更します。

コンテキスト名を元のコンテキスト名に戻す場合は、次の手順を実行します。

  1. ユーザアプリケーションディレクトリに移動します。このディレクトリの場所は/opt/netiq/idm/apps/UserApplicationです。

  2. (オプション) GUIモードでconfigupdateユーティリティを起動するには、configupdate.sh.propertiesファイルのuse_consoleオプションをfalseに設定してください。

    アップグレードユーティリティはこのオプションの値をtrueに変更するため、この手順が必要です。

    または、configupdateユーティリティを起動して、Linux上で追加のコマンドライン引数を渡します。

    ./configupdate.sh use_console=false
  3. configupdateユーティリティを起動します。

    configupdate.sh

  4. ユーザアプリケーションタブで、詳細オプションの表示をクリックし、次の手順を実行します。

    1. RBPMコンテキスト名の変更チェックボックスをオンにします。

    2. RBPMコンテキスト名を元のコンテキスト名に変更します。

    3. 適切なRoles Driver DN (役割ドライバのDN)を参照して選択し、OKをクリックします。

    4. 次のコマンドを使用して、WARファイルの許可と所有権を変更します。

      chmod 755 <Original_Context_Name>.war; chown -R novlua:novlua <Original_Context_Name>.war

      たとえば、元のカスタムコンテキスト名がIDMDevである場合:

      chmod 755 IDMDev.war; chown -R novlua:novlua IDMDev.war
  5. (状況によって実行)すべてのアップグレード後のタスクを完了している場合は、アイデンティティアプリケーションのTomcatサービスを開始します。

One SSO Provider

OSPおよびユーザアプリケーションが異なるサーバで展開される場合は、設定更新ユーティリティを使用して、SSOクライアントパラメータを更新します。詳細については、セクション 11.6.5, SSO Clients Parameters (SSOクライアントパラメータ)のIDMダッシュボードを参照してください。

デフォルトでは、/etc/logevent.conf ファイルにあるLogHostエントリは、localhostに設定されています。

LogHostエントリを変更するには、アップグレードプロセス時に作成したバックアップからカスタマイズされたOSP設定を手動で復元します。

Kerberos

アップグレードユーティリティにより、コンピュータ上に新しいTomcatフォルダが作成されます。keytabやKerberos_login.configなどのKerberosファイルが古いTomcatフォルダ上にある場合は、バックアップしたフォルダから新しいTomcatフォルダにこれらのファイルをコピーします。