1 Oracle Directory Integration Platformの概要
この章では、Oracle Directory Integration Platformとそのコンポーネント、構造および管理ツールの概要について説明します。
トピック:
関連項目:
Oracle Directory Integration Platform統合をデプロイする方法の例は、「事例: Oracle Directory Integration Platformのデプロイ」を参照してください。
1.1 Oracle Directory Integration Platformの利点
Oracle Directory Integration Platformでは、アプリケーションおよびディレクトリ(サード・パーティのLDAPディレクトリを含む)をマスター・バックエンド・ディレクトリと統合することによって、管理にかかる時間とコストを削減できます。Oracle Directory Integration Platform (DIP)では、Oracle Unified Directory、Oracle Internet DirectoryまたはOracle Directory Server Enterprise Editionのいずれかをバックエンド・ディレクトリとして使用することをサポートします。
Oracle Directory Integration Platformは、次のような目的を達成するために使用します。
-
Oracle Human ResourcesとOracleバックエンド・ディレクトリで従業員レコードの整合性を維持すること。Oracle Directory Integration Platformでは、Oracle Directory Synchronization Serviceによりこの同期化を行います。
-
変更がOracleバックエンド・ディレクトリに適用されるたびに、Oracle Portalなどの特定のLDAP対応アプリケーションに通知すること。Oracle Directory Integration Platformでは、Oracle Directory Integration Platform Provisioning Serviceによりこの通知を行います。
-
Microsoft Active DirectoryのパスワードとOracle Unified DirectoryまたはOracle Directory Server Enterprise Editionのパスワードを同期すること。
統合処理全体を通して、Oracle Directory Integration Platformは、アプリケーションとその他のディレクトリが確実な方法で必要な情報をやりとりすることを保証します。
次に示すような、様々なディレクトリと統合できます。
-
Microsoft Active Directory 2012、2012 R2および2016
-
Windows 2003上のSP1適用済Active Directory Application Mode(ADAM)バージョン1(Microsoft Active Directory Lightweight Directory Service(AD LDS))
-
Oracle Directory Server Enterprise Edition 11gリリース1 (11.1.1.7.0)
-
Novell eDirectory 8.8
-
OpenLDAP 2.4
-
IBM Tivoli Directory Server 6.3
-
Oracle Unified Directory
-
Oracle Internet Directory
ノート:
Oracle Internet Directory 10gは、Oracle Directory Integration Platform 12cのOracleバックエンド・ディレクトリまたは接続ディレクトリとして動作保証/サポートされていません。
関連項目:
サポートされるディレクトリの完全なリストは、Oracle Fusion Middlewareのサポートされるシステム構成の動作保証マトリックスを参照してください。
Oracle Fusion Middleware 12c (12.2.1.3.0)のシステム要件およびサポートされているプラットフォームまで下にスクロールし、xls
リンクをクリックして動作保証マトリックスを表示します。
たとえば、Oracle Fusion Middleware環境では、Oracleコンポーネントへのアクセスは、Oracleディレクトリに格納されているデータに基づいて行いますが、セントラル・エンタープライズ・ディレクトリとしてMicrosoft Active Directoryも使用できます。これらのディレクトリのユーザーがOracleコンポーネントにアクセスできるのは、Oracle Directory Integration Platformにより、Microsoft Active Directory内のデータを、Oracle Unified Directory、Oracle Internet DirectoryまたはOracle Directory Server Enterprise Edition内のデータと同期化できるためです。
1.2 Oracle Directory Integration Platformのインストール・オプション
Oracle Directory Integration Platformは、他のOracle Identity Managementコンポーネントと同時に同じホスト(サーバー)にインストールしたり、他のOracle Identity Managementコンポーネントとは別に、スタンドアロン・インスタンスとして単独でホスト・システムにインストールできます。
これは、専用サーバー上の専用のOracle WebLogicドメインで、J2EEベースのコンポーネント(Directory Integration Platform、Oracle Directory Services Manager (ODSM)、またはFusion Middleware Controlなど)を個別に管理する場合に該当します。
Oracle Directory Integration Platformのスタンドアロン・インスタンスをインストールするには、まずOracle Unified Directory、Oracle Internet DirectoryまたはOracle Directory Server Enterprise Editionコンポーネントをインストールする必要があります。次のような状況では、Oracle Directory Integration Platformのスタンドアロン・インスタンスをインストールする必要があります。
-
Oracle Directory Integration Platformを別のアプリケーション・サーバー・インスタンスにインストールする必要がある場合
-
プロビジョニングおよび同期化が必要なアプリケーションに、集中的な処理が必要な場合
-
高可用性のために複数のOracle Directory Integration Platformインスタンスを実行する必要がある場合
関連項目:
Oracle Directory Integration Platformのインストールの詳細は、『Oracle Internet Directoryのインストールと構成』のOracle Directory Integration Platformの構成に関する項を参照してください。1.3 同期とプロビジョニングの相違点の理解
Oracle Directory Integration Platformでの作業を開始する前に、同期とプロビジョニングの相違点を理解しておく必要があります。
同期は、アプリケーションではなくディレクトリを扱います。Oracleバックエンド・ディレクトリと他の接続ディレクトリの両方に存在するエントリおよび属性の一貫性を確保します。
ノート:
同期とレプリケーションは、同義ではありません。レプリケーションは、同一ベンダーのディレクトリ間でのデータ処理に対して使用されます。一方、同期では、DIPによって提供される変換およびマッピング・ルールに基づき、バックエンド・ディレクトリ(メタディレクトリ)とすべてのサード・パーティの接続ディレクトリ間で同期を保つ必要があるデータをより詳細に制御できます。
プロビジョニングは、アプリケーションを扱います。アプリケーションで追跡が必要なユーザーやグループのエントリまたは属性への変更を通知します。
この項の内容は次のとおりです。
1.3.1 同期について
同期によって、Oracleバックエンド・ディレクトリと接続ディレクトリの間で変更を調整できます。すべてのディレクトリが最新のデータのみを使用し、提供するためには、その他の接続ディレクトリでの変更がすべて各ディレクトリに伝達される必要があります。同期は、プロビジョニングによって更新されたデータも含めて、ディレクトリ情報に対する変更の一貫性を確保します。
単一のDirectory Integration Platformサービスにより、複数の接続ディレクトリとOracleバックエンド・ディレクトリ間の同期作業を同時に処理できます。追加のディレクトリをOracleバックエンド・ディレクトリに接続するには、その特定のディレクトリ用に同期プロファイルを作成します。このプロファイルによって、Oracleバックエンド・ディレクトリと接続ディレクトリとの間で同期化されるデータの書式と内容が指定されます。同期プロファイルを作成するには、manageSyncProfiles
ユーティリティまたはOracle Enterprise Manager Fusion Middleware Controlを使用します。
Oracle Directory Integration Platform同期のバックエンド・ディレクトリとして次のディレクトリを構成できます。
-
Oracle Unified Directory
-
Oracle Internet Directory
-
Oracle Directory Server Enterprise Edition
1.3.2 プロビジョニングについて
プロビジョニングにより、アプリケーションにディレクトリの変更(ユーザーまたはグループ情報など)が通知されることを確認できます。このような変更は、アプリケーションでプロセスに対するユーザー・アクセスを許可するかどうかや、使用できるリソースを決定するかどうかに影響を及ぼすことがあります。
プロビジョニングを使用するのは、次の要件を持つアプリケーションを設計またはインストールする場合です。
-
ディレクトリを維持しないアプリケーション
-
LDAP対応のアプリケーション
-
リソースへのアクセスを認可ユーザーのみに限定するアプリケーション
プロビジョニング対象のアプリケーションをインストールする場合、manageProvProfiles
ユーティリティを使用して、そのためのプロビジョニング統合プロファイルを作成する必要があります。
1.3.3 同期とプロビジョニングの相違点
同期とプロビジョニングには、重要な操作上の相違点があります。
表1-1 に相違点を示します。
表1-1 ディレクトリ同期とプロビジョニング統合の違い
考慮事項 | ディレクトリ同期 | プロビジョニング統合 |
---|---|---|
実行のタイミング |
アプリケーションのデプロイ時。ディレクトリ同期の対象は、Oracleバックエンド・ディレクトリとの同期が必要な接続ディレクトリです。 |
アプリケーションの設計時。プロビジョニング統合を使用するのは、LDAP対応アプリケーションを開発するアプリケーション設計者です。 |
通信の方向 |
一方向または双方向、つまり、Oracleバックエンド・ディレクトリから接続ディレクトリ(1つ以上の接続されたOracle Databaseを含む)へ、その逆、またはその両方です。 |
一方向または双方向、つまり、Oracleバックエンド・ディレクトリからアプリケーションへ、その逆、またはその両方です。 |
データの型 |
ディレクトリ内のデータ。 |
プロビジョニング・ユーザーおよびグループに制限されます。 |
例 |
Oracle Human Resources Oracle Directory Server Enterprise Edition Oracle Unified Directory Oracle Internet Directory Microsoft Active Directory Novell eDirectory OpenLDAP IBM Tivoli Directory Server Oracle Database |
Oracle Portal |
1.4 Oracle Directory Integration Platform統合に含まれるコンポーネントの理解
Oracle Directory Integration Platform統合には、Oracleバックエンド・ディレクトリとOracle Directory Integration Platformが含まれます。
トピック:
1.4.1 Oracleバックエンド・ディレクトリについて
Oracle Unified Directory、Oracle Internet DirectoryまたはOracle Directory Server Enterprise Editionのいずれかを、Oracleコンポーネントとサード・パーティ・アプリケーションがユーザー・アイデンティティおよび資格証明を格納してアクセスするリポジトリとして使用できます。Oracleバックエンド・ディレクトリでは、接続ディレクトリ・サーバーを使用し、ユーザーが入力した資格証明をOracleバックエンド・ディレクトリに格納されている資格証明と比較してユーザーを認証します。
資格証明がOracleバックエンド・ディレクトリではなく接続ディレクトリに格納されている場合でも、ユーザーは認証されます。この場合、バックエンド・ディレクトリとして動作するOracle Internet Directoryは、接続ディレクトリ・サーバーに対してユーザーを認証する外部認証プラグインを使用します。詳細は、『Oracle Fusion Middleware Oracle Internet Directory管理者ガイド』の「カスタマイズされた外部認証プラグインの構成」を参照してください。
Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionバックエンド・ディレクトリは、Oracle Unified DirectoryまたはOracle Directory Server Enterprise Editionからのユーザーについての認証をMicrosoft Active Directoryなどの接続ディレクトリに渡すため、パススルー認証を使用します。詳細は、次を参照してください。
-
『Oracle Fusion Middleware Oracle Unified Directory管理者ガイド』のパススルー認証の理解に関する項。
-
Oracle Fusion Middleware Oracle Directory Server Enterprise Edition管理者ガイドのパススルー認証に関する項。
1.4.2 Oracle Directory Integration Platformについて
Oracle Directory Integration Platformは、様々なリポジトリとOracleバックエンド・ディレクトリ間のデータ同期を可能にするJ2EEアプリケーションです。
Oracle Directory Integration Platformは、他のエンタープライズ・リポジトリとともに同期化ソリューションを開発できるようにするためのサービスとインタフェースを提供します。サード・パーティのメタディレクトリ・ソリューションとOracleディレクトリ間の相互運用性も提供します。
図1-1に、Oracle Directory Integration Platform環境の例を示します。
図1-1の例では、Oracle Directory Integration Platformの同期Enterprise JavaBeans(EJB)およびクォーツ・スケジューラを使用して、Oracleバックエンド・ディレクトリが接続ディレクトリと同期化されます。同様に、Oracle Directory Integration PlatformのプロビジョニングEnterprise JavaBeans(EJB)およびクォーツ・スケジューラを使用して、Oracleバックエンド・ディレクトリでの変更が様々なリポジトリに送信されます。
ノート:
図1-1に、Oracle Internet Directoryの外部データベースを示します。Oracle Unified DirectoryおよびOracle Directory Server Enterprise Editionは、内部データベースを使用します。
1.4.2.1 Oracle Directory Integration Platform Serverの概要
Oracle Directory Integration Platform Serverは、次のサービスを実行します。
-
Oracle Directory Integration Platform Synchronization Service:
-
スケジューリング—事前定義されたスケジュールに基づいて同期プロファイルを処理
-
マッピング—接続ディレクトリとOracleバックエンド・ディレクトリの間のデータ変換ルールを実行
-
データ伝播—コネクタを使用して接続ディレクトリとデータを交換
-
エラー処理
-
-
Oracle Directory Integration Platform Provisioning Service:
-
スケジューリング—事前定義されたスケジュールに基づいてプロビジョニング・プロファイルを処理
-
イベント通知—Oracleバックエンド・ディレクトリに格納されているユーザー・データまたはグループ・データに関連した変更をアプリケーションに通知
-
エラー処理
-
1.4.2.2 Oracle Directory Integration Platform Synchronization Serviceの概要
Oracle Directory Integration Platform環境における接続ディレクトリの内容は、Oracle Directory Integration Platform Synchronization Service(同期Enterprise JavaBeans(EJB)およびクォーツ・スケジューラを含む)を介してOracleバックエンド・ディレクトリと同期化されます。
Oracle Fusion Middlewareコンポーネントの場合、Oracleバックエンド・ディレクトリはすべての情報の中央ディレクトリであり、他のすべてのディレクトリと同期しています。この同期には、次の2つの方向があります。
-
一方向: 一部の接続ディレクトリは、Oracleバックエンド・ディレクトリに変更を提供するのみで、変更を受け取ることがありません。たとえば、従業員情報のプライマリ・リポジトリで比較のための基準であるOracle Human Resourcesがこれに該当します。
-
双方向: Oracleバックエンド・ディレクトリでの変更を接続ディレクトリにエクスポートでき、接続ディレクトリでの変更をOracleバックエンド・ディレクトリにインポートできます。
同期サービスでは、特定の属性を対象とする(または無視する)ことができます。たとえば、Oracle Human Resources内の従業員バッジ番号の属性は、Oracleバックエンド・ディレクトリ、その接続ディレクトリまたはクライアント・アプリケーションには関係ありません。同期は不要です。その一方で、従業員識別番号はこれらのコンポーネントとも関係があるため、同期が必要です。
図1-2に、デプロイ例におけるOracle Directory Synchronization Service内のコンポーネント間の相互作用を示します。
図1-2 Oracle Directory Integration Platform Synchronization Serviceの相互作用
「図1-2 Oracle Directory Integration Platform Synchronization Serviceの相互作用」の説明
このようなすべての同期アクティビティをトリガーする中心的なメカニズムがOracleバックエンド・ディレクトリの変更ログです。Oracleバックエンド・ディレクトリなど、接続ディレクトリへの変更ごとに1つ以上のエントリが追加されます。Oracle Directory Synchronization Serviceは、次のことを実行します。
-
変更ログをモニターします。
-
変更が1つ以上の同期プロファイルに対応している場合は、常にアクションを実行します。
-
ログに記録された変更に個々のプロファイルが対応している他の接続ディレクトリすべてに、該当する変更を提供します。接続ディレクトリには、Oracle RDBMS、Oracle Human Resources、Microsoft Active Directory、Oracle Unified Directory、Oracle Directory Server Enterprise Edition、Novell eDirectory、IBM Tivoli Directory Server、OpenLDAPなどがあります。Oracle Directory Synchronization Serviceは、接続ディレクトリが要求するインタフェースと書式を使用してこれらの変更を提供します。Oracle Directory Integration Platformコネクタを介した同期化では、Oracleバックエンド・ディレクトリ・クライアントが必要とするすべての情報に対してOracleバックエンド・ディレクトリが最新の状態に維持されることが保証されます。
1.4.2.3 Oracle Directory Integration Platform Provisioning Serviceの概要
プロビジョニングEnterprise JavaBeans(EJB)およびクォーツ・スケジューラを含むOracle Directory Integration Platform Provisioning Serviceは、ユーザーまたはグループ情報などの変更が各プロビジョニング・アプリケーションに通知されることを保証します。これは、プロビジョニング統合プロファイルに含まれている情報に基づいて行われます。各プロビジョニング・プロファイルの役割は、次のとおりです。
-
そのプロファイルを適用するアプリケーションと組織を一意に識別します。
-
アプリケーションに通知する必要があるユーザー、グループ、操作などを指定します。
Oracleバックエンド・ディレクトリでの変更がアプリケーションのプロビジョニング・プロファイルに指定されているものと一致すると、Oracle Directory Integration Platform Serviceは、そのアプリケーションに関連データを送信します。
ノート:
レガシー・アプリケーション(Oracle Directory Integration Platform Serviceのインストール前に稼働状態であったアプリケーション)は、インストール時に通常の方法ではサブスクライブされません。レガシー・アプリケーションを使用してプロビジョニング情報を受信できるようにするには、プロビジョニング・プロファイルに加えて、プロビジョニング・エージェントを開発する必要があります。このエージェントは、Oracleバックエンド・ディレクトリからの関連データをレガシー・アプリケーションに必要な正確な書式に変換する必要があります。
図1-3に、Oracle Directory Integration Platform Service環境でのコンポーネント間の相互作用を、レガシー・アプリケーションに使用するプロビジョニング・エージェントの特別なケースも含めて示します。
図1-3 Oracle Directory Integration Platform Provisioning Serviceの相互作用