ヘッダーをスキップ
Oracle Identity Managerベスト・プラクティス・ガイド
リリース9.1.0
E05901-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

7 Oracle Access Managerとの統合

この章では、ユーザーがOracle Identity Managerにログインする際に、Oracle Access Managerを使用してユーザーの認証および認可を管理する方法について説明します。

この章では、次の内容について説明します。


注意:

この章では、統合でJBoss Application Serverをアプリケーション・サーバーとして使用する場合を対象としています。Oracle Identity Managerが、IBM WebSphere Application Server、BEA WebLogic Server、またはOracle Identity Managerでサポートされているその他のJ2EEアプリケーション・サーバーにデプロイされている場合でも、同じ構成手順をインスタンスに適用できます。

Oracle Identity Managerとの統合について

Oracle Access ManagerとOracle Identity Managerを統合すると、すべての顧客アプリケーションおよびプロセスのアイデンティティ管理にセキュアなWebベースのインフラストラクチャが提供されます。Oracle Identity Managerは、E-BusinessネットワークにデプロイされたOracle Identity Manager、エンタープライズ・リソースおよび他のドメイン間のアイデンティティおよびアクセス管理を統合します。Oracle Access Managerは、インターネット・アプリケーション間で顧客、パートナおよび従業員のアイデンティティを管理するための基盤となります。これらのユーザー・アイデンティティはセキュリティ・ポリシーと組み合され、Webでのやり取りを保護します。

この統合により、次の機能がOracle Identity Manager実装に追加されます。

統合アーキテクチャ

Oracle Identity Managerには2つの認証メカニズムがあります。

Oracle Identity Managerを使用したOracle Access Managerシングル・サインオンは、次の手順で行います。

図7-1に、Oracle Identity ManagerとOracle Access Manager間のシングル・サインオンのアーキテクチャを示します。

ユーザーがWebブラウザからOracle Identity Manager管理およびユーザー・コンソールにアクセスします。Oracle Access Manager WebGateがユーザーのHTTPリクエストを捕捉し、obSSOCookieの有無をチェックします。Cookieが存在しない場合または期限が切れている場合、ユーザーは資格証明を求められます。Oracle Access Managerが資格証明を検証し、ユーザーが認証されると、WebGateはリクエストされたリソースにユーザーをリダイレクトし、Oracle Identity Managerにリクエストされたヘッダー変数を渡します。Oracle Identity Managerは認証のかわりにHTTPヘッダー変数を読み取るように構成されており、HTTPヘッダーを読み取って変数に格納された値をログイン済ユーザーとして使用します。

図7-1 Oracle Identity Managerとの統合

Oracle Identity Managerでのシングル・サインオンの概要
「図7-1 Oracle Identity Managerとの統合」の説明

プロセスの概要: Oracle Identity Managerでのシングル・サインオン

  1. ユーザーが管理およびユーザー・コンソールにアクセスしようとします。

  2. HTTPサーバーにデプロイされたOracle Access Manager WebGateがリクエストを捕捉します。

  3. WebGateは、アクセス・サーバーをチェックして、リソース(Oracle Identity ManagerのURL)が保護されているかどうかを判断します。

    アクセス・システムのセキュリティ・ポリシーには、認証スキーム、認可ルールおよび認証および認可の成功または失敗に基づいて許可された操作が指定されています。

  4. 有効なセッションが存在せず、リソースが保護されている場合、WebGateはユーザーに資格証明を求めます。

  5. 資格証明が検証されると、Oracle Access Managerはリソースのセキュリティ・ポリシーに定義されたアクションを実行し、Oracle Identity ManagerユーザーIDにマップされたHTTPヘッダー変数を設定します。

  6. 有効なセッションCookieが存在し、ユーザーがリソースへのアクセスを認可されると、WebGateはリクエストされたOracle Identity Managerリソースにユーザーをリダイレクトします。

  7. 管理およびユーザー・コンソールは、HTTPヘッダー変数を読み取り、その値をログイン済ユーザーとして設定します。

  8. 管理およびユーザー・コンソールは、アプリケーション・ページを生成し、Oracle Identity Managerで実行されるその後の認証チェックを保留します。

環境の準備

次のタスクを完了して、Oracle Access ManagerとOracle Identity Managerの統合のための環境を準備します。

タスクの概要: 統合のための環境の準備

  1. サポートされるディレクトリ・サーバーをベンダーの指示に従ってインストールします。

  2. ディレクトリ・サーバーをLightweight Direct Access Protocol(LDAP)リポジトリとして使用して、Oracle Access Managerをインストールおよび構成します。


    関連項目:

    『Oracle Access Managerインストレーション・ガイド』

  3. WebGateをOracle Identity Manager HTTPサーバーにインストールします。

    WebGateは、HTTPサービスをサポートするアプリケーション・サーバー(BEA WebLogic Serverなど)に対してインストールしないでください。アプリケーション・サーバーがOracle Application Server、JBoss Application Server、IBM WebSphere Application ServerまたはBEA WebLogic Serverである場合は、IIS、Apache、iPlanet、Oracle HTTP ServerなどのHTTPサーバーをインストールします。


    関連項目:

    『Oracle Access Managerインストレーション・ガイド』

  4. HTTPサーバーを構成して、ユーザー・リクエストをJ2EEアプリケーション・サーバーに転送し、Oracle Identity Managerからのレスポンスをユーザーに転送するようにします。

  5. ベンダーの指示に従って、Cookieを許可するようにWebブラウザを構成します。

  6. Oracle Identity Manager用にOracle Access Managerを設定します。

Oracle Access Manager用のシングル・サインオンの構成

次の手順では、Oracle Access Manager用のシングル・サインオンを構成する方法について説明します。

Oracle Access Managerに対してシングル・サインオンを構成する手順

  1. アクセス・システムのようこそページで、「ポリシー・マネージャ」をクリックし、「ポリシー・ドメインの作成」をクリックします。

  2. ポリシー・ドメインと、Oracle Identity ManagerのURLへのアクセスを制限するポリシーを作成します。

  3. アクセス・システム・コンソールで、Oracle Identity Managerのホスト識別子を定義します。

  4. 「ポリシー・マネージャ」をクリックし、Oracle Identity Managerポリシー・ドメインのリンクをクリックします。

  5. 「リソース」タブをクリックし、保護するOracle Access Managerのリソースを定義します。

  6. 「認可ルール」タブをクリックし、Oracle Identity ManagerのURLにアクセスできる認証済ユーザーを決定する認可ルールを定義します。

  7. 「デフォルト・ルール」タブをクリックします。「認証ルール」サブタブが選択されています。

  8. Basic Over LDAPなどの認証ルールを定義します。

  9. 「アクション」サブタブをクリックし、認可に成功した場合にカスタムHTTPヘッダー変数を設定する認可アクションを定義します。ヘッダー変数には、Oracle Identity ManagerユーザーIDにマップされている値を含める必要があります。

  10. 「ポリシー」タブを選択します。

  11. 「追加」をクリックし、Oracle Identity Managerポリシー・ドメインにアクセス・ポリシーを定義し、そのポリシーにOracle Identity ManagerのURLリソースを追加します。

Oracle Access Managerによるシングル・サインオンのためのOracle Identity Managerの設定

次の手順では、Oracle Access Managerと統合するためにOracle Identity Managerを設定する方法について説明します。

Oracle Identity Managerに対してシングル・サインオンを構成する手順

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

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

    OIM_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サーバー構成を変更して、シングル・サインオンを有効化します。

    Oracle Application Serverを使用している場合、この手順の実行については、「Oracle Access Managerと通信するためのOracle Application Server OC4J Pluginの設定」を参照してください。その他のアプリケーション・サーバーを使用している場合、詳細は、アプリケーション・サーバーおよびWebサーバーのベンダーのドキュメントを参照してください。

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

Oracle Access Managerと通信するためのOracle Application Server OC4J Pluginの設定


注意:

この項の情報は、IISバージョン6.0に基づいています。シングル・サインオンの構成方法の詳細は、アプリケーション・サーバーおよびWebサーバーのベンダーのドキュメントを参照してください。

Oracle Identity ManagerおよびOracle Access Manager環境では、アプリケーション・サーバーやWebサーバーなど、様々に異なる構成が可能です。この項では、Oracle Application Serverおよびアプリケーション・サーバーのInternet Information Services(IIS)プラグイン(Oracle Application Server OC4J Plugin)を使用して、Oracle Identity ManagerとOracle Access Managerを統合するための構成の一例を示します。

プラグインをインストールおよび構成して、Oracle Application ServerがOracle Access Managerサーバーと通信できるようにする必要があります。Oracle Application Server OC4J Pluginのファイル名はopii.dllです。

Oracle Application Server OC4J Pluginのインストールおよび構成手順

  1. 次の手順を実行して、Oracle Application Server OC4J PluginをOracle Technology Network(OTN)からダウンロードします。

    1. 次のURLからOTNのWebサイトにアクセスします。

      http://www.oracle.com/technology/index.html

    2. ページ上部の水平ナビゲーション・メニューの「Downloads」をクリックします。

    3. ページの「Middleware」セクションまでスクロールし、「Developer Tools」セクションの「SOA Suite」をクリックします。

    4. 「Oracle SOA Suite 10g Release 3 (10.1.3.x)」セクションで「See All」をクリックします。

    5. 表示されるページで、License Terms and Export RestrictionsおよびOracle Technology Network Development License Agreementを受け入れます。

    6. Oracle SOA Suite 10g Companion (10.1.3.x) CDエントリを開きます。Oracle Application Server OC4J Pluginがコンポーネントとしてリストに表示されます。

    7. 該当するオペレーティング・システムの「CD1」をクリックして、Oracle SOA Suite 10g Companion (10.1.3.x) CDのCD1をダウンロードします。

  2. レジストリ・エディタを開き、次の手順を実行します。


    注意:

    ここでは、regeditを使用するサンプルの手順を示します。

    1. 「HKEY_LOCAL_MACHINE」をクリックして、「SOFTWARE」をクリックします。

    2. 「Oracle」を右クリックして、「新規」を選択します。「キー」を選択して、opiiと名前を付けます。

    3. 「opii」エントリを右クリックして、「新規」を選択します。「文字列値」を選択して、文字列値にlog_fileと名前を付けます。

    4. 「log_file」エントリを右クリックして、「修正」を選択します。「文字列の編集」ダイアログ・ボックスが表示されます。

    5. 「値のデータ」フィールドに、opiiログ・ファイルを保存するパスを入力し、「OK」をクリックします。

    6. 「opii」エントリを右クリックして、「新規」を選択します。

    7. 「文字列値」を選択して、文字列値にlog_levelと名前を付けます。このlog_level文字列値はopiiの必要なログ・レベルを指定します。debug、inform、errorおよびemergが有効な値です。

    8. 「opii」エントリを右クリックして、「新規」を選択します。「文字列値」を選択して、文字列値にserver_defsと名前を付けます。

    9. 文字列値「server_defs」を右クリックし、「修正」を選択します。「文字列の編集」ダイアログ・ボックスが表示されます。

    10. opii.confファイルがあるパスを入力します。opii.confファイルは手順10で作成します。

  3. IIS管理コンソールを起動して、Oracle Access Managerサーバーと通信するIISサーバーのホスト・ノードのエントリを開きます。

  4. 「Webサイト」エントリを開いて「既定のWebサイト」エントリを右クリックし、「新規作成」を選択します。この後に、「仮想ディレクトリ」を選択します。仮想ディレクトリの作成ウィザードが表示されます。

  5. 「次へ」をクリックして次の手順を実行します。

    1. 「エイリアス」フィールドにopiiと入力し、「次へ」をクリックします。

    2. 「パス」フィールドにopii.dllファイルの場所を入力し、「次へ」をクリックします。

    3. 「仮想ディレクトリのアクセス許可」画面で「読み取り」「ASPなどのスクリプトを実行する」および「ISAPIアプリケーションやCGIなどを実行する」の各オプションを選択し、「次へ」をクリックします。

    4. 「完了」をクリックして、仮想ディレクトリの作成ウィザードを終了します。

  6. 次の手順を実行して、opii.dll(Oracle Application Server OC4J Plugin)をフィルタとしてIISのWebサイトに追加します。

    1. IIS管理コンソールで、「既定のWebサイト」エントリを右クリックし、「プロパティ」を選択します。既定のWebサイトのプロパティ・ダイアログ・ボックスが表示されます。

    2. 「ISAPIフィルタ」タブをクリックして、「追加」をクリックします。

    3. 「フィルタ名」フィールドにopiiと入力します。

    4. 「実行可能ファイル」フィールドにopii.dll(Oracle Application Server OC4J Plugin)のパスを入力します。

    5. フィルタのプロパティの追加/編集ダイアログ・ボックスで「OK」をクリックします。

    6. 既定のWebサイトのプロパティ・ダイアログ・ボックスで「OK」をクリックします。


      注意:

      opiiフィルタはWebGateフィルタよりも優先度が低いことを確認してください。

  7. 次の手順を実行して、IIS管理コンソールからIISサーバーを再起動します。

    1. Oracle Access Managerサーバーと通信するIISサーバーのホスト・ノードを右クリックします。「すべてのタスク」「IISの再起動」を順に選択します。「IISの停止/開始/再起動」ダイアログ・ボックスが表示されます。

    2. 「<IISサーバーの名前>を再起動します」を選択し、「OK」をクリックします。

    3. IISサーバーの再起動後に、「既定のWebサイト」を右クリックして「プロパティ」を選択し、「ISAPIフィルタ」タブを選択してopiiフィルタに緑色の上向き矢印が表示されていることを確認して、opii.dll(Oracle Application Server OC4J Plugin)が稼働していることを確認します。

  8. IIS管理コンソールで、「Webサービス拡張」をクリックし、「opii」を選択して「許可」ボタンをクリックします。

  9. 次の手順を実行して、ajp13プロトコルのポートを指定します。

    1. Oracle Application Serverのホスト・コンピュータで、OAS_HOME\j2ee\OAS_INSTANCE\config\default-web-site-.xmlファイルをテキスト・エディタで開きます。


      注意:

      OAS_HOMEは、Oracle Application Serveがインストールされている場所です。

      OAS_INSTANCEは、Oracle Application Serverインスタンスの名前です。


    2. 文字列ajp13を検索します。

    3. ajp13のポート番号(8889など)を指定します。

  10. 次のエントリを指定したopii.confファイルをopiiディレクトリに作成します。エントリには、OracleAS Single Sign-Onによって保護されるOracle Identity Managerアプリケーション、Oracle Identity Managerのホスト・コンピュータ名(host_nameなど)およびajp13のポート番号(ajp13 port numberなど)をリストします。

    Oc4jMount/xlWebApp ajp13://host_name:ajp13 port number
    Oc4jMount/xlWebApp/* ajp13://host_name:ajp13 port number
    Oc4jMount/xlScheduler ajp13://host_name:ajp13 port number
    Oc4jMount/xlScheduler/* ajp13://host_name:ajp13 port number
    Oc4jMount/Nexaweb ajp13://host_name:ajp13 port number
    Oc4jMount/Nexaweb/* ajp13://host_name:ajp13 port number