ヘッダーをスキップ
Oracle Identity Manager WebLogic用インストレーション・ガイド
リリース9.0.3.1
E05490-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

7 Oracle Identity ManagerおよびWebLogicのインストール後の構成

Oracle Identity Managerをインストールした後で、アプリケーションを使用する前にインストール後のタスクを実行する必要があります。デプロイによって異なりますが、アプリケーションを使用する前に行うインストール後タスクの一部はオプションです。

この章では次の項目について説明します。

WebLogicのためのインストール後の必須タスク

Oracle Identity ManagerソフトウェアをWebLogicにインストールした後で、Oracle Identity Managerが適切に作動するようにこの項のタスクを実行する必要があります。

Oracle Identity ManagerのためのWebLogicの構成

Oracle Identity Managerをインストールした後で、メモリー・サイズを設定し、Oracle Identity Managerの認証情報を設定し、さらにXMLレジストリを作成して構成する必要があります。


注意:

クラスタ環境でOracle Identity Managerに対してWebLogicを構成する場合は、次の手順7から開始します。

Oracle Identity ManagerのためにWebLogicを構成するには、次のようにします。

  1. WebLogic管理コンソールを使用して、アプリケーション・サーバーを正常に停止します。

  2. <BEA_HOME>\user_projects\domains\<domain_name>(たとえば、C:\bea\user_projects\domains\mydomain)にナビゲートします。

  3. WebLogic起動スクリプト・ファイルをテキスト・エディタで開きます。起動スクリプトを次に示します。

    • Windowsの場合:

      startWebLogic.cmd

    • UNIXまたはLinuxの場合:

      startWebLogic.sh

  4. スクリプトを編集して、次のようにメモリー・オプションを指定します。

    Windowsの場合:

    次の行を確認します。

    %JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS%
    
    

    この行の直前に次の行を追加します。

    set MEM_ARGS=-Xmx1024m -XX:PermSize=128m
    
    

    UNIXまたはLinuxの場合:

    次の行を確認します。

    ${JAVA_HOME}/bin/java ${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS}
    
    

    この行の直前に次の行を追加します。

    MEM_ARGS="-Xmx1024m -XX:PermSize=128m"
    export MEM_ARGS
    
    
  5. ファイルを保存して閉じます。

  6. 管理コンソールを使用してアプリケーション・サーバーを停止し、次のディレクトリにナビゲートしてWebLogicサーバーを起動します。

    <XL_HOME>\xellerate\bin\

    Windowsの場合は次のコマンドを実行します。

    xlStartServer.bat

    UNIXまたはLinuxの場合は次のコマンドを実行します。

    xlStartServer.sh

  7. WebLogic管理コンソールにログインします。

  8. 左のフレームで、「Security」「Realms」「myrealms」「Providers」「Authentication」を選択します。

  9. 「Configure a new OIM Authenticator」をクリックします。

    1. 「Name」はデフォルトのままにしておきます。

    2. 「Control Flag」「Sufficient」に設定して、「Create」をクリックします。

  10. 左のフレームで、「Authentication」をクリックして「DefaultAuthenticator」を選択します。

    1. 「Control Flag」「Sufficient」に設定して、「Apply」をクリックします。

  11. 左のフレームで「Services」をクリックします。

  12. 「XML」を右クリックし、ショートカット・メニューから「Configure a new XMLRegistry」を選択します。

  13. レジストリの情報を入力します。

    1. 一意の名前、たとえばOracle Identity Manager XML registryを入力します。

    2. その他のフィールドではデフォルト値を使用し、「Create」をクリックします。

  14. 「Target and Deploy」タブをクリックします。

    1. サーバーのチェック・ボックスをクリックして選択します(myserverがデフォルトのサーバー名)。

    2. 「Apply」をクリックします。


      注意:

      クラスタ環境では、すべてのクラスタ・メンバーでこの手順を実行してください。

  15. 左のフレームで、「XML」をクリックし、新しいXMLレジストリ・エントリをクリックして開きます。

  16. 「Parser Select Entries」を右クリックし、ショートカット・メニューから「Configure a New XMLPareserSelectRegistryEntry」を選択します。

  17. 構成の情報を入力します。

    1. 「Public ID」フィールドが空白になっていることを確認します。

    2. 「System ID」フィールドが空白になっていることを確認します。

    3. 「Root Element Tag」フィールドにdatabaseと入力します。

    4. 「Document Builder Factory」フィールドに次の文字列を入力します。

      org.apache.crimson.jaxp.DocumentBuilderFactoryImpl

    5. 「Parser Class Name」フィールドが空白になっていることを確認します。

    6. 「SAX Parser Factory」フィールドに次の文字列を入力します。

      org.apache.xerces.jaxp.SAXParserFactoryImpl

    7. 「Create」をクリックします。

  18. WebLogicアプリケーション・サーバーを正常に停止します。

  19. WebLogicサーバーを再起動して、新しい構成をアクティブにします。


注意:

データベースとしてSQL Serverを使用しているときに、Oracle Identity ManagerサーバーのログにMS JDBCクラスに関連する例外の記録がある場合は、ドメイン・ディレクトリにあるstartWebLogicスクリプトのCLASSPATHの最初に3つのMS JDBCファイルを追加して、サーバーを再起動する必要があります。

/weblogic81/server/lib/ディレクトリにある次の3つのファイルを、startWebLogicスクリプトのCLASSPATHの最初に追加し、サーバーを再起動します。

  • mssqlserver.jar

  • msbase.jar

  • msutil.jar

クラスタ環境では、すべての管理対象サーバーの「Remote Start」タブの「Class Path」フィールドにこれら3つの.jarファイルを追加します。


XA接続設定の構成

WebLogicに対してOracle Identity Managerをインストールした後で、XA接続を設定する必要があります。

XA接続を設定するには、次のようにします。

  1. WebLogic管理コンソールにログインし、「Services」を選択します。

  2. 「Services」ページで「JDBC」を選択します。

  3. 「JDBC」ページで「Connection Pools」を選択します。

  4. 「Connection Pools」ページで「xlXAConnectionPool」を選択します。

  5. 「Connections」タブを選択します。

  6. 「Advanced Options」の下の「Show」を選択します。

  7. 「Keep XA Connection Till Transaction Complete」を選択します。

  8. 「Apply」をクリックして変更内容をコミットします。

  9. WebLogicアプリケーション・サーバーを再起動します。

本番環境のためのWebLogic構成設定の確認

Oracle Identity ManagerをWebLogicアプリケーション・サーバー上の本番環境にデプロイする前に、特定のWebLogic構成設定を確認する必要があります。次の設定が無効になっていてもOracle Identity ManagerはWebLogicアプリケーション・サーバーで正常に作動しますが、本番環境のために確認を行う必要があります。シミュレーション・テストや開発環境では適切なパフォーマンスが得られないことを理解してください。WebLogic管理コンソールを使用して次の設定を確認します。

  • Oracle Identity ManagerのJDBC接続プール、xlConnectionPoolおよびxlXAConnectionPoolは、次のように設定されています。

    • 初期容量: 30

    • 最大容量: 50

    • 容量増分: 5

  • 「Test Reserved Connectionsは、xlConnectionPoolとxlXAConnectionPoolの両方で有効になっており、テスト表の名前はXSDです。

  • 「Keep XA Connection Till Transaction Complete」は、xlXAConnectionPoolに対して有効になっています。

  • JMSコネクション・ファクトリxlConnectionFactoryのJMSサーバー・アフィニティは有効になっています。

  • JMSキュー(xlQueue)の再配信制限は1に設定されています。


    注意:

    WebLogicクラスタでは、queue/xlqueue分散キューに含まれるすべての物理キューに対してこの設定を確認します。

  • JMSキュー(xlQueue)の「Error Destination」は、適切なエラー・キューに設定されています。デフォルト・キュー(xlQueue)では、エラー・キュー名はqueue/xlErrorQueueです。


    注意:

    WebLogicクラスタでは、queue/xlqueue分散キューに含まれるすべての物理キューに対してこの設定を確認します。「Error Destination」は、分散キューに含まれる物理キューごとに異なります。

  • JMSキュー(xlQueueおよびxlErrorQueue)の「Replicate JNDI Name In Cluster」設定は有効になっています。


    注意:

    WebLogicクラスタでは、queue/xlqueueおよびqueue/xlErrorQueue分散キューに含まれるすべての物理キューについてこの設定を確認します。

インストール後のオプション・タスク

Oracle Identity Managerをインストールした後、アプリケーションを使用する前に、この項で説明するインストール後のオプション・タスクの実行について検討する必要があります。Oracle Identity Managerのデプロイによって異なりますが、タスクの一部は実行しないことも可能です。

キーストア・パスワードの変更

Oracle Identity ManagerにはOracle Identity Managerサーバー用とデータベース用の2つのキーストアがあります。インストール時に両方のパスワードはxellerateに設定されます。すべての本番インストールでキーストア・パスワードを変更することをお薦めします。どちらのキーストアのキーストア・パスワードもkeytoolを使用して変更できます。

キーストア・パスワードを変更するには、次のようにします。

  1. Oracle Identity Managerのホスト・コンピュータでコマンド・プロンプトを開きます。

  2. <XL_HOME>\xellerate\configディレクトリにナビゲートします。

  3. 次のオプションを指定してkeytoolを実行します。

    <JAVA_HOME>\jre\bin\keytool -storepasswd -new <new_password> -storepass xellerate -keystore .xlkeystore -storetype JKS
    
    

    表7-1に、このkeytoolの例で使用したオプションを示します。

    表7-1 keytoolのコマンド・オプション

    オプション 説明

    <JAVA_HOME>

    アプリケーション・サーバーに関連するJavaディレクトリの場所

    <new_password>

    キーストアの新しいパスワード

    -keystore <option>

    パスワードを変更するキーストア(Oracle Identity Managerサーバーでは.xlkeystore、データベースでは.xldatabasekey)

    -storetype <option>

    .xlkeystoreの場合はJKS、.xldatabasekeyの場合はJCEKS


  4. プレーン・テキスト・エディタを起動し、<XL_HOME>\xellerate\config\xlconfig.xmlを開きます。

  5. <xl-configuration>.<Security>.<XLPKIProvider>.<KeyStore>セクションを編集して、キーストア・パスワードを指定します。


    注意:

    データベースのキーストア(.xldatabasekey)のパスワードを更新するには、構成ファイルの<XLSymmetricProvider>.<KeyStore>セクションを変更します。

    • パスワード・タグをencrypted="false"に変更します。

    • (通常の文字で)パスワードを入力します。たとえば、次のブロックがあるとします。

      <Security>
      <XLPKIProvider>
      <KeyStore>
               <Location>.xlkeystore</Location>
               <Password encrypted="true">xYr5V2FfkRYHxKXHeT9dDg==</Password>
               <Type>JKS</Type>
               <Provider>sun.security.provider.Sun</Provider>
      </KeyStore>
      
      

      これを次のように変更します。

      <Security>
      <XLPKIProvider>
      <KeyStore>
            <Location>.xlkeystore</Location>
            <Password encrypted="false">newpassword
            </Password>
            <Type>JKS</Type>
            <Provider>sun.security.provider.Sun</Provider>
      </KeyStore>
      
      
  6. アプリケーション・サーバーを再起動します。

    アプリケーション・サーバーを停止して起動すると、構成ファイルのバックアップが作成されます。構成ファイル(新しいパスワードを含む)が読み込まれ、ファイル内でパスワードは暗号化されます。

  7. ここまでの手順がすべて正常に終了したら、バックアップ・ファイルを削除することができます。


    注意:

    また、UNIXまたはLinuxでは、次のコマンドを使用してシェルのコマンド履歴をクリアしてください。

    history -c


ログ・レベルの設定

Oracle Identity Managerでは、ロギングにlog4jが使用されます。ログ・レベルは、ロギング・プロパティ・ファイル<XL_HOME>/xellerate/config/log.propertiesで構成されます。

次に、サポートされるログ・レベルのリストを、ロギング情報の多い順に示します(DEBUGでは最も多くの情報がロギングされ、FATALでは最も少ない情報がロギングされます)。

  • DEBUG

  • INFO

  • WARN

  • ERROR

  • FATAL

デフォルトでは、Oracle Identity Managerは警告レベル(WARN)で出力するように構成されています。ただし、デバッグ・レベル(Debug)で出力するようにデフォルトで構成されているDDMを除きます。すべてのコンポーネントを一括して、または個別のコンポーネントごとにログ・レベルを変更できます。

たとえば、Oracle Identity Managerコンポーネントは、<XL_HOME>\xellerate\config\log.propertiesファイルのXELLERATEセクションに次のように指定されます。

log4j.logger.XELLERATE=WARN
log4j.logger.XELLERATE.DDM=DEBUG
log4j.logger.XELLERATE.ACCOUNTMANAGEMENT=DEBUG
log4j.logger.XELLERATE.SERVER=DEBUG
log4j.logger.XELLERATE.RESOURCEMANAGEMENT=DEBUG
log4j.logger.XELLERATE.REQUESTS=DEBUG
log4j.logger.XELLERATE.WORKFLOW=DEBUG
log4j.logger.XELLERATE.WEBAPP=DEBUG
log4j.logger.XELLERATE.SCHEDULER=DEBUG
log4j.logger.XELLERATE.SCHEDULER.Task=DEBUG
log4j.logger.XELLERATE.ADAPTERS=DEBUG
log4j.logger.XELLERATE.JAVACLIENT=DEBUG
log4j.logger.XELLERATE.POLICIES=DEBUG
log4j.logger.XELLERATE.RULES=DEBUG
log4j.logger.XELLERATE.DATABASE=DEBUG
log4j.logger.XELLERATE.APIS=DEBUG
log4j.logger.XELLERATE.OBJECTMANAGEMENT=DEBUG
log4j.logger.XELLERATE.JMS=DEBUG
log4j.logger.XELLERATE.REMOTEMANAGER=DEBUG
log4j.logger.XELLERATE.CACHEMANAGEMENT=DEBUG
log4j.logger.XELLERATE.ATTESTATION=DEBUG
log4j.logger.XELLERATE.AUDITOR=DEBUG

Oracle Identity Managerのログ・レベルを設定するには、<XL_HOME>\xellerate\config\log.propertiesファイルのロギング・プロパティを次のように編集します。

  1. <XL_HOME>\xellerate\config\log.propertiesファイルをテキスト・エディタで開きます。

    このファイルには、Oracle Identity Managerの一般的な設定と、Oracle Identity Managerを構成するコンポーネントやモジュールの個別の設定が含まれます。

    デフォルトでは、Oracle Identity Managerは、次のように警告レベル(WARN)で出力するように構成されています。

    log4j.logger.XELLERATE=WARN

    これはOracle Identity Managerの一般的な設定の値です。個々のコンポーネントとモジュールの値は、プロパティ・ファイルの一般的な値の後に指定されます。個々のコンポーネントとモジュールは様々なログ・レベルに設定できます。特定のコンポーネントのログ・レベルが一般設定よりも優先されます。

  2. 一般設定の値を必要なログ・レベルに設定します。

  3. 他のコンポーネントのログ・レベルを必要に応じて設定します。

    個々のコンポーネントまたはモジュールには、様々なログ・レベルを指定できます。たとえば、次の値を指定すると、Account Managementモジュールのログ・レベルがINFO、サーバーはDEBUGレベル、その他のOracle Identity ManagerはWARNレベルに設定されます。

    log4j.logger.XELLERATE=WARNlog4j.logger.XELLERATE.ACCOUNTMANAGEMENT=INFOlog4j.logger.XELLERATE.SERVER=DEBUG

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

  5. アプリケーション・サーバーを起動して、変更を有効にします。

Oracle Identity Managerのためのシングル・サインオン(SSO)の有効化

次の手順で、ASCII文字のログインを使用するOracle Identity Managerに対してシングル・サインオンを有効にする方法を示します。非ASCII文字のログインに対応するシングル・サインオンを有効にする場合も、次の手順を使用しますが、手順4で説明する追加の構成が必要です。


関連資料:

Oracle Access Managerを利用するOracle Identity Managerでのシングル・サインオンの構成の詳細は、『Oracle Identity Managerベスト・プラクティス・ガイド』を参照してください。


注意:

英字のみのヘッダー名しか認証されません。ヘッダー名には特殊な文字や数字を使用しないことをお薦めします。

Oracle Identity Managerのためにシングル・サインオンを有効化するには、次のようにします。

  1. アプリケーション・サーバーを正常に停止します。

  2. プレーン・テキスト・エディタを起動し、次のファイルを開きます。

    <XL_HOME>\xellerate\config\xlconfig.xml

  3. 次のようなシングル・サインオンの構成を探します(次に示すのは、シングル・サインオンを含まないデフォルト設定です)。

    <web-client>
    <Authentication>Default</Authentication>
    <AuthHeader>REMOTE_USER</AuthHeader>
    </web-client>
    
    
  4. 次のようにシングル・サインオン構成を編集し、シングル・サインオン・システムで構成した適切なヘッダーで<SSO_HEADER_NAME>を置き換えます。

    <web-client>
    <Authentication>SSO</Authentication>
    <AuthHeader><SSO_HEADER_NAME></AuthHeader>
    </web-client>
    
    

    非ASCII文字のログインに対してシングル・サインオンを有効にするには、非ASCIIのヘッダー値をデコードするようにデコード・クラス名を指定する必要があります。デコード・クラス名を追加し、シングル・サインオン構成を次のように編集します。

    <web-client>
    <Authentication>SSO</Authentication>
    <AuthHeader><SSO_HEADER_NAME></AuthHeader>
    <AuthHeaderDecoder>com.thortech.xl.security.auth.CoreIDSSOAuthHeaderDecoder</AuthHeaderDecoder>
    </web-client>
    
    

    シングル・サインオン・システムで構成した適切なヘッダーで<SSO_HEADER_NAME>を置き換えます。

  5. アプリケーション・サーバーとWebサーバーの構成を変更して、シングル・サインオンを有効にします。アプリケーション・サーバーおよびWebサーバーのベンダーのドキュメントを参照してください。

  6. アプリケーション・サーバーを再起動します。

カスタム認証の構成

ここでは、カスタム認証ソリューションをOracle Identity Managerで使用する方法について説明します。

Oracle Identity Managerは、ユーザーを認証するためにJava Authentication and Authorization Service(JAAS)モジュールをデプロイしています。無人ログインでは、オフライン・メッセージ処理とスケジュール済タスク実行が必要なため、Oracle Identity Managerは署名ベース認証を使用します。署名ベース認証を処理するにはJAASを使用する必要がありますが、標準認証リクエストを処理するためにカスタム認証ソリューションを作成することができます。


注意:

Oracle Identity Manager JAASモジュールはアプリケーション・サーバーにデプロイして、認証機能として最初に起動する必要があります。

WebLogicアプリケーション・サーバーでカスタム認証を有効にするには、WebLogicサーバー・コンソールを使用します。ここでは、複数の認証プロバイダを追加でき、それらのプロバイダを特定の順序で起動することができます。指定するカスタム認証プロバイダが標準認証リクエストを処理し、Oracle Identity Manager JAASモジュールは署名ベース認証の処理を引き続き行います。


注意:

指定するカスタム認証プロバイダは、WebLogicサーバー・コンソールの認証プロバイダのリストで、Oracle Identity Manager JAASモジュールよりも後にあることが必要です。

WebLogicに対してカスタム認証プロバイダを指定するには、次のようにします。

  1. 「WebLogic Server Console」を起動し、domain/Security/Realms/realm name/Providers/Authenticationの「Authentication Providers」ページを開きます。

  2. 「Authentication Providers」ページで、ページ下部の表から「Oracle Identity Manager Authenticator」を選択します。「Oracle Identity Manager Authenticator」ページが表示されます。

  3. 「Oracle Identity Manager Authenticator」ページで、「Details」タブの「Allow Custom Authentication」チェック・ボックスを選択し、「Apply」をクリックします。

  4. 「Authentication Providers」ページで、追加するカスタム認証プロバイダの「Configure a new ...」リンクをクリックして新しい認証プロバイダを構成します。

  5. 新しい認証プロバイダの構成が終了したら、そのプロバイダが認証プロバイダのリストでOracle Identity Manager Authenticator(つまりOracle Identity Manager JAASモジュール)の後にあることを確認します。リストでOracle Identity Manager Authenticatorがカスタム認証プロバイダよりも上にない場合は、「Re-order the Configured Authentication Providers」をクリックしてください。

  6. WebLogicアプリケーション・サーバーを再起動します。

JNDIネームスペースの保護

カスタム認証ソリューションを指定する場合は、Java Naming and Directory Interface(JNDI)ネームスペースを保護して、指定ユーザーのみがリソースの表示権限を持つようにすることも必要です。JNDIネームスペースを保護する最大の目的は、同じアプリケーション・サーバー・インスタンスにインストールされている可能性がある悪質なアプリケーションからOracle Identity Managerを守ることです。悪質かどうかにかかわらず他のアプリケーションがOracle Identity Managerと同じアプリケーション・サーバー・インスタンスにインストールされていなくても、標準のセキュリティ対策としてJNDIネームスペースを保護する必要があります。

JNDIネームスペースを保護し、Oracle Identity ManagerがJNDIネームスペースにアクセスするように構成するには、次のようにします。

  1. テキスト・エディタで<XL_HOME>/config/xlconfig.xmlファイルを開き、次の要素を<Discovery>要素に追加します。

    <java.naming.security.principal>
    <java.naming.security.credentials>
    
    
  2. オプションとしてJNDIパスワードを暗号化するには、次のように、値trueを割り当てたencrypted属性を<java.naming.security.credentials>要素に追加し、要素の値としてパスワードを割り当てます。

    <java.naming.security.credentials
      encrypted="true">password</java.naming.security.credentials>
    
    
  3. 次の要素を<Scheduler>要素に追加します。

    <CustomProperties>
      <org.quartz.dataSource.OracleDS.java.naming.security.principal>user
      </org.quartz.dataSource.OracleDS.java.naming.security.principal>
      <org.quartz.dataSource.OracleDS.java.naming.security.credentials>pwd
      </org.quartz.dataSource.OracleDS.java.naming.security.credentials></CustomProperties>
    
    
  4. サーバーを再起動します。

JNDIネームスペース構成のトラブルシューティング

検索を実行するために1ユーザーのみを作成した場合、Oracle Identity Managerサーバーを起動しようとして次の例外が検出されることがあります。<user_name>は、検索を実行するように作成したユーザーです。

[XELLERATE.ACCOUNTMANAGEMENT],Class/Method: Authenticate/connect User with ID: <user_name> was not found in Xellerate.
[XELLERATE.ACCOUNTMANAGEMENT],Class/Method: Authenticate/connect User with ID: <user_name> was not found in Xellerate.
[XELLERATE.ACCOUNTMANAGEMENT],Class/Method: XellerateLoginModuleImpl/login encounter some problems:
com.thortech.xl.security.tcLoginException:
  at com.thortech.xl.security.tcLoginExceptionUtil.createException(Unknown Source)
  at com.thortech.xl.security.tcLoginExceptionUtil.createException(Unknown Source)
  at com.thortech.xl.security.Authenticate.connect(Unknown Source)
  at com.thortech.xl.security.wl.XellerateLoginModuleImpl.login(Unknown Source)
  at weblogic.security.service.DelegateLoginModuleImpl.login(DelegateLoginModuleImpl.java:71)

この問題を解決するには、Oracle Identity Managerサーバーを起動した後で、次の手順を使用して管理対象サーバーの埋込みLDAPディレクトリを管理サーバーのLDAPディレクトリでリフレッシュします。

  1. WebLogic管理コンソールにログインします。

  2. 管理対象サーバーのドメイン名をクリックします。

  3. 「View Domain-wide security settings」をクリックします。

  4. 「Embedded LDAP」タブをクリックします。

  5. 「Refresh replica at startup」オプションを選択し、「Apply」をクリックします。

  6. 管理サーバーと管理対象サーバーを再起動します。


注意:

この問題を解決するにはこの手順を1回だけ実行してください。管理サーバーと管理対象サーバーを再起動してから「Refresh replica at startup」オプションを無効にすることができます。