ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Identity Manager開発者ガイド
11g リリース2 (11.1.2.2.0)
B69536-07
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

2 製品のアーキテクチャ

Oracle Identity Managerのアーキテクチャには、アイデンティティおよびアクセス管理の一部としてプロビジョニング・ソリューションをデプロイするための様々な優れた技術上の利点があります。Oracle Identity Managerは、IT要件およびビジネス要件に対処できる柔軟なアーキテクチャを持ち、既存のインフラストラクチャ、ポリシーまたは手順を変更する必要はありません。

Oracle Identity Managerアーキテクチャについては、次の各項で説明します。

2.1 Oracle Identity Managerの仕組み: Oracle Identity Managerの層

Oracle Identity Managerは、n層J2EEアプリケーション・アーキテクチャに基づいています。Oracle Identity Managerのアーキテクチャは、次の層で構成されています。

図2-1に、Oracle Identity Managerのアーキテクチャを示します。

図2-1 Oracle Identity Managerのアーキテクチャ

図2-1の説明が続きます
「図2-1 Oracle Identity Managerのアーキテクチャ」の説明

2.1.1 プレゼンテーション層

プレゼンテーション層は、Oracle Identity Self Service、Oracle Identity System AdministrationおよびOracle Identity Manager Design Consoleの3つのクライアントで構成されています。

Oracle Identity Self Serviceは、Webベースのシン・クライアントで、任意のWebブラウザからアクセスできます。このWebクライアントは、単一のインタフェース内に、ほとんどのOracle Identity Managerユーザーに役立つユーザー・セルフサービス機能および委任管理機能を提供します。

Oracle Identity System Administrationは、管理およびシステム管理機能を提供するWebベースのシン・クライアントです。

Oracle Identity Manager Design Consoleでは、フォーム、ワークフロー設計、アダプタの作成と管理など、システムの構成および開発機能が提供されます。Design Consoleは、アプリケーション内でビジネス・サービス・レイヤーと直接通信するJava Swingクライアントとして実装されます。Oracle Identity Manager Design Consoleには、デスクトップJavaクライアントを使用してアクセスできます。

また、Oracle Identity Managerインタフェースは高度な委任管理モデルをサポートしているため、ユーザーは、権限を与えられたアプリケーション構成部分のみで作業できます。

多くの企業には、カスタム開発したクライアントをサポートするプロビジョニング・システムに対する要件があります。そのいくつかの要件は、次のとおりです。

  • 既存のエンタープライズ・ポータルへのクライアントの統合、およびエンタープライズ・ポータル標準の遵守

  • ユーザー相互作用に対するカスタム・フローの作成

  • 一意の要件に基づいてプロビジョニング・システムから構築されるカスタム・ページの作成

カスタマイズをサポートするために、Oracle Identity Managerでは、公開されたパブリックAPIを介して必要な機能の大部分を公開しています。Oracle Identity Managerのクライアント環境は、Java APIを介してカスタマイズできます。

2.1.2 ビジネス・サービス層

ビジネス・サービス層は、Enterprise JavaBeans (EJB)アプリケーションとして実装されます。Oracle Identity Managerプラットフォームの中核機能は、高度なモジュール型オブジェクト指向の手法を使用して、Javaで実装されます。これにより、Oracle Identity Managerの柔軟性と拡張性が向上します。Oracle Identity Managerのビジネス・サービス層には、次のサービスおよび機能が含まれます。

  • Oracle Identity Managerが提供するビジネス機能の中核を形成するコア・サービス(ユーザー管理サービス、ポリシー管理サービス、プロビジョニングおよびリコンシリエーション・サービスなど)。

  • Oracle Identity ManagerでサポートされているAPIを記述したAPIサービス(APIサービスを使用すると、カスタム・クライアントをOracle Identity Managerに統合できます)。カスタム・クライアントによる製品のカスタマイズや、プラグインおよびアダプタの開発の際に使用できるように、Oracle Identity Managerのビジネス機能を公開する一連の豊富なAPIが含まれています。

  • アダプタ・ファクトリおよびコネクタ・フレームワークに基づいた統合サービス(統合サービスでは、アダプタのメタデータ定義に従って統合コードが動的に生成されます)。

  • Oracle Identity Managerが提供するビジネス機能に不可欠なプラットフォーム・サービス(リクエスト管理サービス、エンティティ・マネージャ・サービス、スケジューラ・サービスなど)。

ビジネス・サービス層については、次の各項で説明します。

2.1.2.1 APIサービス

APIサービスには、カスタム・クライアントとOracle Identity Managerとの統合を可能にする、Oracle Identity ManagerでサポートされるAPIが記述されています。カスタム・クライアントによる製品のカスタマイズや、プラグインおよびアダプタの開発の際に使用できるように、Oracle Identity Managerのビジネス機能を公開する一連の豊富なAPIが含まれています。

APIサービスの構成は、次のとおりです。

  • SPML API: サービス・プロビジョニング・マークアップ言語(SPML)は、組織内および組織間でのアイデンティティ情報やシステム・リソースのプロビジョニングと割当てを管理するための標準です。Oracle Identity Managerでは、アイデンティティ管理機能をクライアントに公開するSPMLベースの一連のWebサービスをサポートしています。APIは、次の操作に対してサポートを提供します。

    • アイデンティティの追加、変更および削除

    • ロールの追加、変更および削除

    • ロール・メンバーシップの追加と削除

    これらのAPIは、Oracle Identity Managerに送信されるリクエストを管理目的でサポートし、プロビジョニング・ターゲットとの統合に使用するプロトコルであるSPMLとは区別されます。

  • EJB API: プラットフォームの機能に対するきめ細かなアクセスは、一連のEJBを経由します。これらのセッションBeanは、Oracle Identity ManagerのWebアプリケーション・クライアントに実装されている機能の基盤です。また、カスタム・クライアントがOracle Identity Managerの機能にアクセスする際に使用できるインタフェースでもあります。

2.1.2.2 統合サービス

スケーラブルで柔軟な統合アーキテクチャは、企業のプロビジョニング・ソリューションのデプロイメントを成功させる上で非常に重要です。Oracle Identity Managerは、統合アーキテクチャを提供し、迅速で低コストのデプロイメントを実現します。

Oracle Identity Managerの統合サービスには、コネクタの開発、デプロイメントおよびメンテナンスのサポートに必要なすべてのコンポーネントが用意されています。統合サービスには、次のものがあります。

2.1.2.2.1 コネクタ・フレームワーク

Oracle Identity Managerのコネクタは、ターゲット・アプリケーションにあるアイデンティティを管理するために、そのアプリケーションとの統合に使用されるパッケージ・ソリューションです。このようなターゲット・アプリケーションの例には、Microsoft Active DirectoryやOracle E-Business Suiteなどがあります。コネクタは、特定のターゲット・システム用にOracleで事前に定義されていますが、カスタム開発することもできます。

事前定義済コネクタはターゲット・アプリケーション専用に設計されているため、最も迅速な統合方法となります。これらのコネクタは、Oracle eBusiness Suite、PeopleSoft、Siebel、JD EdwardおよびSAPなどの一般的なビジネス・アプリケーションの他、Active Directory、Java Directory ServerおよびUNIXの各データベース、RSA ClearTrustなどのテクノロジ・アプリケーションもサポートします。事前定義済コネクタは、ターゲット・アプリケーション専用に設計されているため、最も迅速な統合の選択肢です。これらは、ターゲットが推奨する統合テクノロジを使用し、アプリケーション固有の属性を使用して事前に構成されています。

事前定義のコネクタで、ターゲットが推奨する統合テクノロジが使用されていない場合は、カスタム・コネクタを開発できます。Oracle Identity Manager Design Consoleのアダプタ・ファクトリ・ツールには定義ユーザー・インタフェースがあり、これを使用すると、コーディングやスクリプトを作成せずに、このようなカスタム開発を簡単に実現できます。

コネクタには、次の構成要素があります。

  • コネクタ固有の複数のOracle Identity Managerエンティティ(リソース・オブジェクト、データ・フォーム、プロビジョニング・ワークフロー、アダプタなど)

  • 接続性、認証、ユーザー・アカウント管理などの基礎となる機能を提供するターゲット固有のJavaライブラリ

  • アイデンティティ・プロファイルの変更とポリシーの操作の両方に対してプロビジョニング操作を関連付けるイベント・トリガー

コネクタ・フレームワークは、これらのコンポーネントすべてを、手動によるユーザー相互作用またはシステム・トリガーに基づいて、適切な時期に実行される機能コネクタに結合します。特定の要件にあわせてコネクタ操作を調整できる操作可能な様々なトリガー、ポリシー・トリガーおよびフックを定義します。

2.1.2.2.2 アイデンティティ・コネクタ

Oracle Identity Managerとともにデプロイされるコネクタは、Oracle Identity Managerの様々なリリース間でのコネクタの移植性に影響を与えます。アイデンティティ・コネクタ・フレームワーク(ICF)は、Oracle Identity Managerからコネクタを分離します。その結果、任意の製品でコネクタを使用できるようになります。アイデンティティ・コネクタは、アプリケーションの実装を、そのアプリケーションが接続を試みるシステムの依存性から切り離すように設計されています。

アイデンティティ・コネクタには、次のコンポーネントがあります。

  • アイデンティティ・コネクタ・フレームワーク: アプリケーションからコネクタ・バンドルを切り離すコンテナを提供します。フレームワークには一般的な機能が数多く用意されていますが、ない場合は開発者が独自に実装する必要があります。たとえば、フレームワークでは、接続プーリング、バッファ、タイムアウトおよびフィルタを提供できます。アイデンティティ・コネクタ・フレームワークは、2つの部分に分かれています。

    • API: APIを使用してアプリケーションがコネクタをコールします。

    • SPI: SPIを実装することで開発者がコネクタを作成できます。

  • アイデンティティ・コネクタ・バンドル: 指定のリソース・ターゲットに対する固有の実装です。

  • コネクタ・サーバー(オプション): 別のシステムにデプロイされている1つ以上のコネクタ・バンドルをアプリケーションからリモートで実行できます。コネクタ・サーバーはJava (tm)と.NETの両方で使用できます。.NETコネクタ・サーバーは.NETコネクタ・バンドルを使用する場合にのみ必要であり、Javaコネクタ・サーバーはJavaで記述されたコネクタ・バンドルに対して使用できます。

図2-2に、ICFアーキテクチャを示します。

図2-2 ICFアーキテクチャ

図2-2の説明が続きます
「図2-2 ICFアーキテクチャ」の説明

コネクタSPI

コネクタSPIインタフェースは、コネクタでサポートされる操作を表します。コネクタ開発者は、ターゲット・システム・コールをフレーム化するために1つ以上の操作インタフェースを実装することを選択できます。既存のインタフェースの拡張や新規インタフェースの作成はサポートされていません。SPIは、必須のインタフェース、機能ベースのインタフェースおよび操作のインタフェース(作成、更新、削除および検索など)に分類されます。

  • 必須のインタフェースには、org.identityconnectors.framework.spi.Connectorインタフェースやorg.identityconnectors.framework.spi.Configurationインタフェースが含まれます。これらのインタフェースは、構成の実装が格納されているクラスおよび操作の実装が格納されている場所をAPIが把握するために実装する必要があります。

  • 機能ベースのインタフェースには、org.identityconnectors.framework.spi.AttributeNormalizerインタフェースやorg.identityconnectors.framework.spi.PoolableConnectorインタフェースがあります。

  • 操作のインタフェースは、コネクタがサポートする機能(作成、削除、検索など)を判断します。Oracle Fusion Middleware Oracle Identity Manager Java APIリファレンスを参照してください。

コネクタAPI

コネクタAPIは、実装された操作に関係なく、一貫したコネクタの表示を提供する機能を果たします。SPI開発者の利便性のために、複数の一般的な機能がデフォルトで用意されています。ほとんどの機能では、アプリケーション開発者によるAPIの処理は不要で、APIの構成のみが必要です。次に、API機能のリストを示します。

  • すべてのコネクタが接続されるわけではないため、接続プーリングは必要なコネクタにのみ提供し、APIが接続プーリングを確認しなくて済むようにします。また、コネクタが接続プーリングを使用する場合は、接続の処理もエラー発生時の接続の破棄もAPI開発者の担当ではありません。

  • すべての操作にタイムアウトを提供します。デフォルトをそのまま使用しない場合は、APIコンシューマが適切なタイムアウトを構成します。各SPI開発者は、一般的なサービスを実装する必要はありません(フレームワークに実装されているため)。

  • 多種多様なフィルタを受け入れる単純なインタフェース手段として検索フィルタを提供します。コネクタ開発者に唯一必要な作業は、リソースが本来サポートしているフィルタを実装することです。それ以外はフレームワークで処理されます。

  • 必要な場合に問合せや更新を大量に処理できるように、検索/同期バッファを提供します。実際はフレームワーク内で処理されるため、この点についてアプリケーションで考慮する必要はありません。

  • コネクタに対して、GroovyおよびBooの.NETを介してスクリプトを提供します。これによって、フレームワークでは、コネクタとターゲット・リソースの両方でスクリプトを実行できるため(サポートされている場合)、コネクタ内で高い柔軟性が得られます。

  • SPI開発者は、操作に対して異なる実装を選択できます。たとえば、2つのタイプの更新があるとします。アプリケーション開発者は、基本的に同じことを実行する2つの異なる操作をコールする必要がないため、これはAPIコンシューマには非表示にされます。かわりに、コネクタがサポートする操作はフレームワークで把握され、適切なコールが実行されます。

2.1.2.2.3 アダプタ・ファクトリ

アダプタ・ファクトリはOracle Identity Managerで提供されるコード生成ツールです。これによって、Oracle Identity Managerアプリケーション開発者は、Javaクラス(アダプタとも呼ばれる)を作成できます。

リソースには関連するプロビジョニング・プロセスがあり、そのプロセスには様々なタスクが関連付けられます。同様に、各タスクにはアダプタが関連付けられ、必要な操作を実行するためにターゲット・リソースに接続されます。

アダプタには次の利点があります。

  • Oracle Identity Managerの内部ロジックと機能を拡張します。

  • リソースのAPIを活用してそのリソースに接続することで、ソフトウェア・リソースとインタフェースします。

  • Oracle Identity Managerと外部システム間の統合を可能にします。

  • 手動でコードを記述しなくても生成できます。

  • アダプタのすべての定義はリポジトリに保存されるため、簡単にメンテナンスできます。このリポジトリはGUIを使用して編集できます。

  • Oracle Identity Managerでは、あるユーザーが統合に関するドメインの知識を保持し、別のユーザーがアダプタをメンテナンスできます。

  • 変更およびアップグレードできます。

アダプタ・ファクトリは、商用システムやカスタム・システムとの迅速な統合を実現します。ユーザーは、アダプタ・ファクトリのグラフィカル・ユーザー・インタフェースを使用し、プログラムやスクリプトを作成することなく、統合を作成または変更できます。コネクタが作成されると、Oracle Identity Managerリポジトリではその定義が管理され、自己文書化ビューが作成されます。これらのビューを使用して、コネクタの拡張、メンテナンスおよびアップグレードを実行します。

2.1.2.2.4 汎用テクノロジ・コネクタ

Oracle Identity Managerの事前定義済コネクタは、Microsoft Active DirectoryおよびPeopleSoft Enterprise Applicationsなどの、一般的に使用されているターゲット・システムにあわせて設計されています。事前定義済コネクタのアーキテクチャは、ターゲット・システムがサポートしているAPI、またはターゲット・システムがユーザー・データを格納するデータ・リポジトリのタイプおよびスキーマのいずれかに基づいています。ターゲット・システムでこれらのコネクタが使用できる場合は、統合の方法として事前定義済コネクタを使用することをお薦めします。ただし、対応する事前定義済コネクタがないターゲット・システムとOracle Identity Managerを統合する場合があります。たとえば、XYZ Travels Inc.は、顧客が航空運賃見積のリクエストに使用するカスタムのWebベース・アプリケーションを所有しています。XYZ Travelsの従業員でもあるエージェントは、これらのリクエストに対し、同じアプリケーションを使用して応答します。顧客は、自己登録によりこのアプリケーション内にアカウントを作成します。ただし、XYZ Travelsの従業員は、人事管理上の役職に基づいて自動的にプロビジョニングされたアカウントを持っている必要があります。作成、更新および削除など、アプリケーションのアカウント管理機能は、Java APIを介して使用可能です。カスタム・アプリケーションをOracle Identity Managerに統合する場合に使用できる事前定義済コネクタはありません。したがって、ターゲット・アプリケーションで公開されているJava APIをコールするカスタム・コネクタを作成する必要があります。

Oracle Identity Managerを、対応する事前定義済コネクタがないターゲット・システムと統合するには、カスタム・コネクタを作成してターゲット・システムとOracle Identity Managerをリンクできます。アダプタ・ファクトリのカスタマイズ機能が不要な場合は、Oracle Identity Managerの汎用テクノロジ・コネクタ(GTC)機能を使用してコネクタを作成できます。

基本のコネクタは、高度な機能やカスタマイズ動作を使用せず、SPML、JDBCなどの汎用接続性テクノロジを使用してすばやく簡単に作成できます。GTCはコネクタ開発に代替環境を提供するウィザードで、Oracle Identity Managerでターゲット・システム・コネクタを構成するために必要なすべての機能コンポーネントを速やかに作成します。

GTCフレームワークには基本コンポーネントが用意されており、これらのコンポーネントを使用してカスタム・コネクタを迅速に作成できます。汎用テクノロジ・コネクタのリコンシリエーション・モジュールおよびプロビジョニング・モジュールは、選択したこれらの再使用可能コンポーネントで構成されます。それぞれのコンポーネントでは、プロビジョニング時またはリコンシリエーション時に、特定の機能が実行されます。次のコンポーネントがあります。

  • リコンシリエーション:

    • リコンシリエーション・トランスポート・プロバイダ: このプロバイダは、リコンサイルされたデータをターゲット・システムからOracle Identity Managerに移動します。

    • リコンシリエーション・フォーマット・プロバイダ: このプロバイダは、ターゲット・システムから受け取った、リコンサイル済データが含まれているメッセージを、Oracle identity Managerのリコンシリエーション・エンジンで解釈できるデータ構造に解釈します。

    • 検証プロバイダ: このプロバイダは、受け取ったデータをリコンシリエーション・エンジンに渡す前にそのデータを検証します。

  • プロビジョニング:

    • プロビジョニング・フォーマット・プロバイダ: このプロバイダは、Oracle identity Managerのプロビジョニング・データを、ターゲット・システムでサポートされているフォーマットに変換します。

    • プロビジョニング・トランスポート・プロバイダ: このプロバイダは、受け取ったプロビジョニング・メッセージをプロビジョニング・フォーマット・プロバイダからターゲット・システムに伝播します。

図2-3は、汎用テクノロジ・コネクタの機能アーキテクチャを示しています。

図2-3 汎用テクノロジ・コネクタの機能アーキテクチャ

図2-3の説明が続きます
「図2-3 汎用テクノロジ・コネクタの機能アーキテクチャ」の説明

汎用テクノロジ・コネクタには、次の機能があります。

  • 次の機能は、リコンシリエーション・モジュールに固有のものです。

    • 信頼できるソース・リコンシリエーションでの汎用テクノロジ・コネクタ: 汎用テクノロジ・コネクタは、信頼できるソース・リコンシリエーションに使用できます。信頼できるモードのリコンシリエーションでは、リコンシリエーション・エンジンで新規のターゲット・システム・アカウントが検出されると、対応するOIMユーザーが作成されます。リコンシリエーション・エンジンでは、既存のターゲット・システム・アカウントに対する変更が検出されると、対応するOIMユーザーに同様の変更が行われます。

    • アカウント・ステータスのリコンシリエーションでの汎用テクノロジ・コネクタ: ユーザー・アカウント・ステータス情報は、ターゲット・システム・アカウントの所有者によるアカウントへのアクセスおよびアカウントの使用が許可されるかどうかの追跡に使用されます。Oracle identity Managerに格納されている形式のアカウント・ステータス情報がターゲット・システムに格納されていない場合は、事前定義済の翻訳変換プロバイダを使用して、アカウント・ステータスのリコンシリエーションを実装できます。

    • 完全リコンシリエーションまたは増分リコンシリエーションでの汎用テクノロジ・コネクタ: 汎用テクノロジ・コネクタを作成する際に、コネクタを完全リコンシリエーションまたは増分リコンシリエーションに使用するように指定できます。増分リコンシリエーションでは、最後のリコンシリエーション実行後に変更されたターゲット・システムのレコードのみがOracle Identity Managerでリコンサイル(格納)されます。完全リコンシリエーションでは、すべてのリコンシリエーション・レコードがターゲット・システムから抽出されます。

    • バッチ・リコンシリエーションの汎用テクノロジ・コネクタ: リコンシリエーション・プロセスを詳細に制御するために、汎用テクノロジ・コネクタを使用してリコンシリエーションのバッチ・サイズを指定できます。これにより、リコンシリエーション実行中にリコンシリエーション・エンジンがターゲット・システムからフェッチするレコードの総数をバッチに分割できます。

    • 複数値属性データ(子データ)の削除のリコンシリエーションでの汎用テクノロジ・コネクタ: ターゲット・システムの複数値属性データの削除をOracle Identity Managerでリコンサイルするかどうかを指定します。

    • リコンシリエーション停止の失敗しきい値での汎用テクノロジ・コネクタ: リコンシリエーションの実行時に、ターゲット・システム・データをOracle Identity Managerに格納する前に、検証プロバイダを使用してデータのチェックを実行できます。失敗しきい値を設定しておくと、検証チェックに通らなかったレコードの処理済レコードの総数に対する割合が指定のしきい値を超えた場合に、リコンシリエーションの実行を自動的に停止できます。

  • 汎用テクノロジ・コネクタには、その他に次の機能があります。

    • カスタム・プロバイダ: Oracle Identity Managerに付属の事前定義済プロバイダが、動作環境のトランスポート、フォーマット変更、検証または変換についての要件に対応していない場合は、カスタム・プロバイダを作成できます。

    • 多言語サポート: 汎用テクノロジ・コネクタは、ASCIIとASCII以外の両方の形式のユーザー・データを処理できます。

    • カスタム日付書式: 汎用テクノロジ・コネクタの作成時は、リコンシリエーション実行中に抽出されたターゲット・システム・レコードの日付の値の書式と、プロビジョニング実行中にターゲット・システムに送信する必要がある日付の値の書式を指定できます。

    • OIMユーザー属性に対する変更のターゲット・システムへの伝播: 汎用テクノロジ・コネクタの作成時に、OIMユーザー属性に対する変更が自動的にターゲット・システムに伝播されるように設定できます。

2.1.2.2.5 Remote Manager

アダプタでJavaタスクを使用する場合、適切なJava APIを検索するようにOracle Identity Managerを構成する必要があります。Java APIは、Meta Data Store (MDS)のJARファイルに格納されています。サード・パーティ・システムと直接通信せずに、プロキシのように動作するOracle Identity Managerコンポーネントを使用する必要がある場合があります。このコンポーネントは、Remote Managerと呼ばれます。Remote Managerは、次の目的で使用します。

  • Oracle Identity Managerを通じた非リモートAPIの呼出し

  • セキュアな接続でのSecure Sockets Layer (SSL)をサポートしないAPIの呼出し

Remote Managerは、ターゲット・システムのコンピュータで動作するOracle Identity Managerサーバーのコンポーネントです。ネットワーク対応のAPIがないアプリケーションやセキュリティを提供しないアプリケーションとの統合に必要なネットワークとセキュリティ・レイヤーを提供します。これは、軽量Remote Method Invocation (RMI)サーバーとして構築されます。通信プロトコルは、Hypertext Transfer Protocol/Secure (HTTP/S)経由でトンネリングされたRMIです。

J2EE RMIフレームワークにより、事実上透過的な分散サービスおよびアプリケーションが作成できるようになります。RMIベースのアプリケーションは、場所に関係なく、相互にメソッド・コールを実行するJavaオブジェクトで構成されます。これにより、Javaオブジェクトは、同じ仮想コンピュータにあるJavaオブジェクトでメソッドをコールするのと同じ方法で、別の仮想コンピュータにある別のJavaオブジェクトでメソッドをコールできます。

図2-4に、Remote Managerのアーキテクチャの概要を示します。

図2-4 Remote Managerのアーキテクチャ

図2-4の説明が続きます
「図2-4 Remote Managerのアーキテクチャ」の説明


関連項目:

Remote Managerおよびその構成の詳細は、『Oracle Fusion Middleware Oracle Identity Manager管理者ガイド』のRemote Managerのインストールと構成に関する説明を参照してください。

2.1.2.3 プラットフォーム・サービス

プラットフォーム・サービスには、次の内容が含まれます。

2.1.2.3.1 プラグイン・フレームワーク

プラグイン・フレームワークを使用すると、Oracle Identity Managerのデフォルトの機能を簡単に拡張およびカスタマイズできます。拡張性を提供できるビジネス・ロジックの特定のプラグイン・ポイントは、この機能によって公開されます。各インタフェース定義には、このようなポイントが付随しており、プラグイン・インタフェースと呼ばれます。顧客は、これらのプラグイン・インタフェースを拡張してカスタマイズを定義するコードを、ビジネス・ニーズに基づいて作成できます。これらのプラグインは、プラグイン・マネージャを使用してOracle Identity Managerにデプロイおよび登録されます。その後、これらのプラグインは、Oracle Identity Managerによって、該当するポイント以降に処理する機能に組み込まれます。

機能の開発者は、カスタム実装の格納場所とそのロード方法を追跡する必要はありません。プラグイン・フレームワークは、クラスパス、ファイル・システムおよびデータベースからのプラグインのローディングをサポートしています。

2.1.2.3.2 SoDエンジン・フレームワーク

コンプライアンス・プラクティスの効率的な適用の試みは、職務の分離(SoD)ポリシーの定義を介して実行されます。SoDは、概して権限の矛盾するセットをユーザーが取得しないようにする方法として定義されます。この矛盾するセットは、有害な組合せとも呼ばれます。有害な組合せの例には、同一の注文に対する作成と承認の機能を1個人に付与する例があります。多くの企業には、ビジネス・アプリケーション固有のSoDエンジンがあり、そのビジネス・アプリケーション内で、ユーザーが保持する権限に対してSoDポリシーが定義および適用されます。このようなSoDエンジンの例には、OAACG、SAP GRCなどがあります。

顧客は、SoDエンジン・フレームワークを使用して、選択したSoDエンジンをOracle Identity Managerと統合し、リクエストおよびプロビジョニング・プロセスの適切なポイントでSoDチェックを有効にできます。Oracle Identity Managerは、SoD起動ライブラリ(SIL)を介してSoDチェックのリクエストをSoDエンジンに送信できます。SILは、サポート対象のSoDエンジンすべてに共通のサービス・インタフェースを提供します。Oracle Identity Manager内のビジネス・コンポーネントは、この共通のサービス・インタフェースによって抽象化されます。その結果、SoDエンジンに必要な正しいデータ形式や返された結果の解釈をSoDチェックで処理する必要がなくなります。

SoDチェックは、プロビジョニング・ライフサイクルの様々な時点(アクセスのリクエスト時、承認ワークフローの実行時、プロビジョニングの実行時など)で実行できます。違反が検出されると、リクエストまたはリソースは違反としてマークされ、承認者または管理者によって続行するかどうかが判断されます。リクエストの処理中に違反が検出された場合は、さらに高いレベルで承認できる様々な承認ワークフローを起動できます。

図2-5に、SoD検証プロセスにおけるデータ・フローを示します。

図2-5 Oracle Identity ManagerでのSoD検証プロセス

図2-5の説明が続きます
「図2-5 Oracle Identity ManagerでのSoD検証プロセス」の説明


関連項目:

SoDの詳細は、第22章「職務の分離(SoD)の使用」を参照してください。

2.1.3 ミドルウェア層

Oracle Identity Managerアーキテクチャのミドルウェア層は、次のもので構成されています。

2.1.3.1 リクエスト・サービスと承認ワークフロー

Oracle Identity Managerのアーキテクチャには、承認ワークフローを構成できるリクエスト・サービスが含まれています。Oracle Identity Managerでは、この機能の配信に、Oracle Service Oriented Architecture (SOA) Suiteが使用されます。

Oracle SOA Suiteを使用すると、サービス指向アプリケーションを作成し、任意のミドルウェア・プラットフォームにデプロイできます。多数のコンポーネントで構成されていますが、包括的なワークフロー機能を提供するためにOracle Identity Managerに必要なコンポーネントは、次のとおりです。

  • BPEL Process Manager: Oracle BPEL Process Managerは、自動ワークフロー・ステップとヒューマン・ワークフロー・ステップの両方を使用してアプリケーション間ビジネス・プロセスを作成、デプロイおよび管理するための包括的なソリューションを提供します。完了したプロセスと実行中のプロセスの両方の監査証跡や、プロセスの改善を可能にするプロセス履歴も提供します。

  • ヒューマン・リクエスト・サービス: BPEL標準では手動タスクはサポートしていませんが、非同期サービスをサポートしています。そのため、Oracle SOA Suiteでは、手動ステップを標準のBPELプロセスに挿入できるように、手動タスク・サービスであるヒューマン・リクエスト・サービスをサポートしています。Oracle Identity Self Serviceにはタスク・リストがあります(ユーザーは、このリストを使用して、ヒューマン・リクエスト・サービスの管理下にある割り当てられたタスクを表示して操作できます)。

  • BPEL Designer: Oracle BPEL DesignerはJDeveloperのプラグインとして使用でき、BPELベースのプロセスを作成してデプロイするための視覚デザインのパラダイムを提供します。

Oracle Identity Managerは、SOAタスク・リストをUIに埋め込みます。これによって、SOAスイートでのユーザーの対話が最適化および簡略化されます。承認者は、埋込みSOAタスク・リストを使用してOracle Identity Managerで行われたリクエストを承認できます。

Oracle Identity Managerの埋込みSOAタスク・リストを使用すると、Oracle Identity Managerエンティティの関連データを、デフォルトのWebサービスの最上位にあるOracle Business Rules (OBR)ファクトとしてSOAインスタンスで利用可能にできます。このため、SOAワークフローで承認者と承認のルーティングを解決するために複雑なJavaコードを記述する必要はありません。次のデータは、OBRファクトとしてSOAコンポジットで使用可能です。

  • リクエスタおよび受益者のユーザー属性

  • リクエストされた項目のベース・エンティティに関連付けられているすべてのメタデータ

  • リクエストされた項目のカタログ・エンティティに関連付けられているすべてのメタデータ

図2-6は、リクエスト・サービスとSOAの間の統合を示しています。

図2-6 リクエスト・サービスおよびSOAの統合

図2-6の説明が続きます
「図2-6 リクエスト・サービスおよびSOAの統合」の説明

リクエスト・サービスには、Oracle Identity Managerでのリクエストの発行および追跡に使用されるサービスも用意されています。ユーザーは、リクエストを使用して、必要な承認を取得した後に実行するアクションや、保持されているプロセス全体の追跡レコードとそのステータスを要求できます。リクエストは、リクエスト・タイプとして定義されている様々なタイプのアクションが対象となります。リクエストのタイプは、次のいずれかです。

  • エンティティの作成、変更または削除

  • エンティティの有効化または無効化

  • ロールのメンバーとしてのアイデンティティの追加または削除

  • 権限の付与および取消し

  • アプリケーション・インスタンスのプロビジョニング、プロビジョニング解除、有効化、無効化および変更


注意:

アプリケーション・インスタンスは、Oracle Identity Manager 11gリリース2 (11.1.2.2.0)で導入された新しいエンティティです。アプリケーション・インスタンスの詳細は、『Oracle Fusion Middleware Oracle Identity Manager管理者ガイド』のアプリケーション・インスタンスの管理に関する説明を参照してください。

リクエスト・サービスは、様々なタイプのリクエストをサポートし、複数のリクエスト・タイプに対応する機能があります。Oracle Identity Managerには、最も一般的なユースケースを対象とした事前定義の多様なリクエスト・タイプが用意されています。

リクエスト・サービスでは、同じリクエスト内で複数のタイプのエンティティを要求できる異種リクエストもサポートされています。たとえば、ロールの割当て、アプリケーション・インスタンスのプロビジョニングおよび権限の付与が、単一のリクエストでサポートされます。

リクエスト・サービスは、Oracle Identity Managerの様々なサービスを介して、リクエスト・フローにデータを提供するフロー・モデルを定義します。これには、正確な時間での承認ワークフローの起動、ワークフローのステータスの監視、承認を受領した場合のリクエストの実行などがあります。

リクエストのトランザクション・データと履歴データの両方が保持され、監査およびコンプライアンスの要件がサポートされます。

2.1.3.2 認可サービス

Oracle Identity Managerは、ユーザーがアプリケーションで表示および変更できる内容に対しては強レベルのアクセス制御が必要です。この要件を満たすために、Oracle Identity Managerでは、ユーザーが認可ポリシーを定義して特定のアクションを許可するかどうかを実行時に判断できます。この機能は、Oracle Identity Manager内に埋め込まれているOracle Entitlements Server (OES)を使用する認可サービスによって制御されます。OESは認可製品であり、権限や認可ポリシーを集中管理し、アプリケーション・コンポーネントとアプリケーション・ビジネス・オブジェクトの両方に対するアクセスをきめ細かに決定できます。

OESのアーキテクチャは、2つの主要な要素で構成されています。管理アプリケーションは、ポリシー管理ポイント(PAP)として機能し、ポリシー、構成、ロールおよび権限の管理に使用されます。2つ目の主要な構成要素は、アプリケーション・コンテナに保存されている1つ以上のセキュリティ・モジュール(SM)の活用です。これらのSMは、ポリシー決定ポイント(PDP)できめ細かなアクセス制御ポリシーを評価し、そのポリシーをポリシー強制ポイント(PEP)で適用します。

図2-7に、OESベースの認可サービスのアーキテクチャを示します。

図2-7 OESベースの認可サービス

図2-7の説明が続きます
「図2-7 OESベースの認可サービス」の説明

権限チェックがリクエストされるたびに、次の処理が実行されます。

  • Oracle Identity Managerは認可サービスに接続し、保護されているエンティティに対する操作に関するアクセス決定に備えます。

  • 次に、サービスはリソースに適用する1つ以上のポリシーを検索して評価します。

  • 実行時には、セキュリティ・モジュールによって、ポリシーの評価に必要なすべての情報が収集されます。

  • ポリシーが、ロールごとに対象を参照する場合は、すべてのロールが評価され、アクセス決定が実行されます。

Oracle Identity Managerは、OESの最上部に抽象化サービスを提供し、Oracle Identity Managerのポリシーの定義を最適化および単純化します。このサービスにはポリシー定義UIが含まれており、これによって、機能に固有で、ユーザーやロールなどのエンティティに関する属性や機能のきめ細かな制御をサポートする認可ポリシーを定義できます。

2.1.3.3 UIカスタマイズ・フレームワーク

Oracle Identity ManagerはApplication Development Framework (ADF)を使用して、単純でビジネスフレンドリなUIカスタマイズ機能を提供しており、コードを記述する必要はありません。カスタマイズに使用するコンポーネントは、次のとおりです。

  • Oracle Web Composer: Oracle Identity Managerでは、WebブラウザベースのUIカスタマイズ、および非IDEまたはJDeveloperベースのカスタマイズがサポートされています。JDeveloperは、ページ、ページ・フラグメント、リージョン、タブなどのUIアーティファクトを作成するために使用します。これらのアーティファクトをOracle Identity Managerにデプロイした後に、Oracle Web Composerを使用してこの新しいコンテンツをさらにカスタマイズすることができます。


    注意:

    JDeveloperを使用する場合は、事前定義されたページをカスタマイズするのではなく、APIを使用して最初からページを構築することができます。IDEベースのUIカスタマイズと、WebブラウザベースのUIカスタマイズの間に、相互運用性はありません。

    Oracle Web Composerでは、ページのブラウザベースのランタイム・カスタマイズまたはパーソナライズ、ページ・レイアウトの変更、ページへの項目の追加、ブランド設定を実行できます。カスタマイズは、一時的に保存、確認、およびデプロイメント固有、テナント固有またはユーザー固有としてファイナライズすることができます。UIカスタマイズではコードとUIメタデータが別に保持されるため、パッチおよびアップグレード間で永続的なカスタマイズが提供されます。

  • ADFビジネス・エディタ: ADFビジネス・エディタを使用すると、ユーザー、ロール、組織、カタログおよびアプリケーション・インスタンス・エンティティのカスタム属性を拡張または追加できます。また、ユーザー、リソース・オブジェクトおよびアプリケーション・インスタンスのリクエスト・データセットを構成することもできます。

  • メタデータ・ストア(MDS): カスタマイズとパーソナライズは、Oracle MDSを使用してファイル・システムまたはデータベースに格納されます。

図2-8は、UIカスタマイズ・フレームワークのコンポーネントを示しています。

図2-8 UIカスタマイズ・フレームワーク

図2-8の説明が続きます
「図2-8 UIカスタマイズ・フレームワーク」の説明

2.1.3.4 スケジューラ・サービス

ビジネス・システムでは、指定の時間に他のプログラムを実行するように構成されたスケジューリング・システムが頻繁に活用されます。スケジューリング・システムでは、レポートの生成、データの再フォーマット、または監査を実施するアプリケーションが定期的に実行されます。多くの場合、スケジューリング・システムは、定められた時間に自動的に定型作業を実行するバッチ・ジョブ(スケジュールされたジョブ)を実行します。スケジューリング・システムは、エンタープライズ・プロビジョニング・ソリューションに不可欠です。プロビジョニングには、通常、時間ベースの方法で実行するタスクが含まれています。次に例を示します。

  • 管理されたアプリケーションで直接行われた変更をすべてリコンサイルする夜間ジョブの実行

  • 指定の時間内に割り当てられたジョブが処理されなかった場合のエスカレーションの実行

  • 特定時間に開始するリクエストの実行

Oracle Identity Managerプラットフォームには、エンタープライズ・プロビジョニング要件を満たすためのスケジュール機能を提供するスケジューラが含まれています。このサービスは、独立した製品ではなく、Oracle Identity Managerプラットフォームの一部として管理されます。図2-9に、Oracle Identity Managerスケジューラのアーキテクチャの概要を示します。

図2-9 Oracle Identity Managerスケジューラのアーキテクチャ

図2-9の説明が続きます
「図2-9 Oracle Identity Managerスケジューラのアーキテクチャ」の説明

スケジューラ・サービスによって提供される主な機能は、次のとおりです。

  • 数千のジョブを実行するための単純または複雑なスケジュールを作成する機能

  • スケジューリング・サービスをクラスタ化されたサービスとして実行し、必要な高可用性機能(フェイルオーバーやロード・バランシングなど)を提供する機能

  • 管理およびフェイルオーバー・サポートのためにジョブの定義を永続化する機能

  • ジョブを作成、変更、有効化、無効化および削除し、個々のジョブ実行を管理UIを使用して管理する機能

  • 定期的にスケジュールされた実行以外に、非定型方式でジョブを実行する機能

  • エラーと障害を管理する機能

  • ジョブ実行の履歴(実行の統計と結果を含む)を保持する機能

  • スケジューラ・サービス自体を管理する機能

2.1.3.5 レポート作成

Oracle Identity Managerリポジトリに格納されている一連の豊富なデータは、管理要件およびコンプライアンス要件をサポートする詳細なレポートを介して表示できます。Oracle Identity Managerは、Oracle BI Publisher(すべてのレポートとビジネス文書をオーサリング、管理および配信する単一のレポート環境を提供するエンタープライズ・レポート・ソリューション)を使用したデータ・レポートをサポートしています。Microsoft Word、Microsoft ExcelまたはAdobe Acrobatなどの、一般的な一連のデスクトップ・ツールを利用して、Oracle Identity Management製品を含む様々なソースのデータに基づいてレポート・レイアウトを作成および管理できます。

Oracle Identity Managerには、標準的な一連のOracle BI Publisherレポート・テンプレートが用意されています。各テンプレートは、カスタマイズしてルック・アンド・フィールを変更できます。Oracle Identity Managerデータベース・スキーマを活用して独自のカスタム・レポートを作成することもできます。

2.1.4 データ層

Oracle Identity Managerはデータおよびメタデータによって駆動されるため、Oracle Identity Managerの機能には柔軟性と適合性が提供されます。Oracle Identity Managerリポジトリまたはデータベースで構成されたOracle Identity Managerのデータ層は、ANSI SQL 92準拠のリレーショナル・データベースおよびLDAPアイデンティティ・ストア(オプション)でOracle Identity Managerデータとメタデータを管理および格納します。

この項では、データ層について次の各トピックで説明します。

2.1.4.1 Oracle Identity Managerデータベース

Oracle Identity Managerリポジトリは、アイデンティティ管理およびプロビジョニング・システムの中核となる値である「いつ、誰が、何を、なぜ、どのように所持しているか」に関するデータの認証ストアです。Oracle Identity Managerデータベースに格納されるデータは、次の幅広いカテゴリに分類されます。

  • エンティティ・データ: ユーザー、組織、ロール、ロール・メンバーシップ、リソース、プロビジョニング済リソース

  • トランザクション・データ: リクエスト、承認ワークフロー・インスタンス、プロビジョニング・ワークフロー・インスタンス、ヒューマン・タスク

  • 監査データ: リクエスト履歴、ユーザー・プロファイル履歴

高可用性

データベースは、停止時間やパフォーマンスの問題を回避するために、スケーラブルで冗長なデータ・レイヤーを提供します。信頼性、リカバリ可能性、タイムリなエラー検出および継続的稼働は、高可用性ソリューションの主な特徴です。

Oracle Identity Managerのアーキテクチャは、製品と併用されるデータベース管理システムが提供する機能に依存しています。これらの機能には、次のことが必要です。

  • すべてのコンポーネントに冗長性を持たせること

  • コンピュータ障害、ストレージ障害、人的エラー、データ破損、書込み欠落、システムの停止または減速、およびサイト障害からの保護および耐性を備えていること

  • できるかぎり素早く透過的に停止からリカバリすること

  • 計画停止時間をなくしたり短縮するソリューションを備えていること

  • 一貫性のある高いパフォーマンスを備えていること

  • デプロイ、管理および拡張が容易であること

  • 考えられる最も低い総所有コストでサービス水準合意(SLA)を実現すること

多種多様な高可用性ソリューションやビジネス継続性ソリューションを使用できます。Oracle Real Application Clusters (Oracle RAC)やOracle Data Guardなどのテクノロジを使用して、データベース可用性を最大化する方法の詳細は、次のWebサイトを参照してください。

http://www.oracle.com/technetwork/database/features/availability/maa-090890.html

2.1.4.2 メタデータ・ストア

Oracle Identity Managerの基礎となるロジックは、メタデータ・ドリブンです。構造的および動作的な側面は、メタデータを使用して記述されます。Oracle Identity Managerのアーキテクチャでは、Oracle Metadata Services (MDS)に依存してメタデータに統一の格納場所を提供します。これにより、Oracle Identity Managerのメタデータおよび構成している他のFusion Middlewareコンポーネントのメタデータに対して、一貫した信頼性のあるアクセスが確保されます。アプリケーションの設計フェーズで使用される同じメタデータが、アプリケーションの実行時にメタデータ・サービス・レイヤーを介して使用されます。これにより、Oracle Identity Managerのライフサイクルを通じて一貫性が確保されます。MDSには、一般的なメタデータ管理ツールも用意されており、共通のリポジトリに格納されている様々なタイプのメタデータ全体に使用できます。

MDSの主要な機能およびアーキテクチャ指針には、次の内容が含まれます。

  • 様々なFusion Middlewareコンポーネントで使用されるすべてのアーティファクトに対して統一された単一のリポジトリを使用した、簡素化されたリソース管理

  • 開発、テスト、ステージングおよび本番の様々な段階を通して変化する、各アーティファクトのメタデータ・ライフサイクルの管理

  • 複数のコンポーネントにわたるメタデータの共有と再使用

  • アーティファクトの分類と再使用、再使用の奨励、および一貫性の促進

  • 様々な機能の基礎を形成するバージョニング機能

  • メタデータおよびアプリケーション・ロジックをメタデータの使用方法ごとに調整できる、安全にアップグレート可能な階層化されたカスタマイズ・メカニズム

  • パフォーマンスを最適化するための構成可能なチューニング・オプションと一体化された高度なキャッシュおよびアセンブルの技術

MDS経由でアクセスおよび管理するメタデータは、ファイル・ベースのリポジトリまたはデータベース・ベースのリポジトリのいずれかに格納されます。Oracle Identity Managerのアーキテクチャでは、このモードで提供されるパフォーマンスおよび可用性に関する複数の高度な機能を利用するために、メタデータはOracle Identity Managerデータベース内に存在します。

MDSでは、特定のビジネス・グループの要件に合せるためのアプリケーションの変更、ユーザーの個々のプリファレンスに合せるためのアプリケーションのカスタマイズ、実行時にカスタマイズ可能なアプリケーションの作成など、カスタマイズ要件を満たすアプリケーションを作成できる機能が用意されています。MDSの機能を使用したOracle Identity Managerのカスタマイズの詳細は、「インタフェースのカスタマイズ」を参照してください。

2.1.4.3 アイデンティティ・ストア

Oracle Identity Managerには、LDAPベースのアイデンティティ・ストアをOracle Identity Managerアーキテクチャに統合する機能があります。Oracle Identity Managerから直接LDAPベースのアイデンティティ・ストアを接続および管理できます。この機能を使用すると、アイデンティティのリクエスト・ベースの作成および管理を含めたOracle Identity Managerの高度なユーザー管理機能を使用して、企業のアイデンティティ・ストア内でアイデンティティを管理できます。

このデプロイメント・アーキテクチャでは、ユーザー・アイデンティティ情報が、LDAPストアに加えてOracle Identity Managerデータベースにも格納されるため、Oracle Identity Managerが機能するために必要なリレーショナル機能がサポートされます。すべてのデータは、プロビジョニング・アクションの実行やポリシーおよびルールの設定なしで、透過的に同期が維持されます。ユーザーの作成や変更など、Oracle Identity Manager内で開始されるアイデンティティ操作は、トランザクションの整合性を維持する形で両方のストアで実行されます。さらに、Oracle Identity Manager外部で行われたLDAPストアの変更は、Oracle Identity Managerにプルされ、アイデンティティ・コンテキストの一部として使用できるようになります。

2.1.4.4 LDAPアイデンティティ・ストアとOracle Identity Managerの統合

Oracle Identity Managerのユーザーおよびロールは、Oracle Identity Managerデータベースに格納されます。ただし、Oracle Identity Managerでユーザー、ロールまたはロール・メンバーシップの変更が発生した場合、この情報はLDAPアイデンティティ・ストアに伝播されます。ユーザー、ロールまたはロール・メンバーシップの変更がLDAPで直接発生した場合、これらの変更はOracle Identity Managerに同期化されます。同期化には、次のことが含まれます。

  • ユーザーの作成、変更、削除、有効または無効へのステータス変更、およびパスワード変更が、Oracle Identity Managerの内部表に加え、LDAPでも実行されます。

  • ロールの作成、変更および削除アクションにより、LDAPグループがメンバーシップ変更も含めて更新されます。

  • ユーザー、ロールおよびロール・メンバーシップの初期ロードが同期化されます。

  • LDAPでのユーザー・プロファイルに対する直接変更がOracle Identity Managerにリコンサイルされます。これにはパスワードの変更は含まれません。

  • LDAPでのロールおよびロール・メンバーシップに対する直接変更がOracle Identity Managerにリコンサイルされます。

ユーザーおよびロール・データで変更が発生すると、実際の操作はカーネル・ハンドラを活用して実行されます。これらのハンドラは、検証、前処理、アクションおよび後処理など、オーケストレーション・ライフサイクルの様々な段階を通過します。カーネル編成の様々なステージの詳細は、「イベント・ハンドラの開発」を参照してください。

Oracle Identity Managerカーネル・オーケストレーションはエンティティ・マネージャに接続し、そのエンティティ・マネージャがさらにLDAPプロバイダに接続します。LDAPプロバイダはOracle Virtual Directory (OVD)に接続します。OVDは、Oracle Internet Directory、iPlanet、Active Directoryなど、様々なディレクトリ・システムへのインタフェースです。LDAPプロバイダはOVDを使用してLDAPデータにアクセスします。図2-10に、Oracle Identity ManagerとLDAP間の通信を示します。

図2-10 Oracle Identity ManagerとLDAP

図2-10の説明が続きます
「図2-10 Oracle Identity ManagerとLDAP」の説明

Oracle Identity ManagerとLDAPアイデンティティ・ストア間での統合の構成およびデータの同期化の詳細は、次の各項を参照してください。

2.1.4.4.1 LDAPとの統合の構成

Oracle Identity ManagerとLDAP間の統合の構成は、Oracle Identity Managerのインストール時に実行されます。Oracle Identity Managerは、LDAP付きまたはLDAPなしでのインストールを選択できます。Oracle Identity ManagerをLDAP付きでインストールする場合は、OVDおよびOracle Internet Directoryをインストールして、予約されたユーザーを格納するコンテナを作成し、Oracle Identity Managerの操作を実行する新規ユーザーをOracle Identity Managerに作成し、Oracle Identity ManagerにあわせてOVDおよびOracle Internet Directoryを構成する必要があります。これらの構成設定の実行方法は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のLDAP同期化の設定に関する説明を参照してください。

LDAPが有効な状態のOracle Identity Managerをインストールした後は、次の各スケジュール済ジョブを開き、Oracle Internet Directoryの最終変更ログ番号の値を使用して、各ジョブの「最終変更番号」パラメータを更新する必要があります。

  • LDAPユーザー作成および更新のリコンシリエーション

  • LDAPユーザー削除のリコンシリエーション

  • LDAPロール・メンバーシップのリコンシリエーション

  • LDAPロール階層のリコンシリエーション

  • LDAPロール作成および更新のリコンシリエーション

  • LDAPロール削除のリコンシリエーション

さらに、「最終変更番号」パラメータを更新した後は、これらのスケジュール済ジョブを有効にする必要があります。これを行うには、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのジョブの無効化と有効化に関する項を参照してください。


関連項目:

スケジュール済ジョブの詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのスケジュール済タスクの管理に関する項を参照してください。

2.1.4.4.2 Oracle Identity ManagerからLDAPアイデンティティ・ストアへのデータのプロビジョニング

Oracle Identity Managerデータベースには、ユーザーおよびロールの情報が格納されています。Oracle Identity Managerでユーザーおよびロールの情報が更新された場合は、LDAPディレクトリなどの外部リポジトリも更新する必要があります。

LDAPの変更は、Oracle Identity Managerの変更の前に実行されます。Oracle Identity Managerで変更が失敗した場合は、LDAPへの変更を元の状態に戻す必要があります。これは、有効化操作を無効化操作で、作成操作を削除操作でそれぞれ修正し、変更操作を当初の値を使用した変更操作で修正することによって実現します。

たとえば、ユーザーが作成された場合、検証段階では、パスワードや他のポリシーの検証などの検証プロセスが実行されます。前処理段階では、最初にLDAPにユーザーが作成されます。そのユーザーは、次のアクション段階で、Oracle Identity Managerに作成されます。Oracle Identity Managerでのユーザーの作成でエラーが発生した場合、Oracle Identity Managerには対応するユーザーが作成されていないため、そのユーザーはLDAPから削除する必要があります。変更を元に戻す操作は、Oracle Identity Managerに事前定義されている補正メソッドを使用したカーネル・ハンドラによって提供されます。


注意:

各ハンドラには、実行メソッドと補正メソッドが事前定義されています。実行メソッドでは、任意の操作(ユーザーの作成など)が実行されます。補正メソッドは、エラーが発生した場合にコールされ、実行メソッドが実行した操作を元に戻します。

Oracle Identity ManagerからLDAPに日付を同期化するには、LDAPの場所をOracle Identity Managerで把握している必要があります。LDAPの場所に関する情報は、Directory Server ITリソースとしてOracle Identity Managerに格納されます。これは、Oracle Identity Managerによって提供されるデフォルトのITリソースです。Oracle Identity Managerのインストール時に指定可能な、このITリソースの様々なパラメータを使用すると、Oracle Identity ManagerとLDAPを接続できます。

識別名(DN)およびGUID属性は、Oracle Identity ManagerとLDAPで同じエントリを識別するために使用されます。LDAPの各エントリにはDN属性があり、LDAP内でのエントリの一意の場所を示します。GUID属性は、エントリを識別するための一意のIDです。ユーザーおよびロールのDNとGUIDは、Oracle Identity Managerデータベースのユーザーおよびロールの表の列に格納されます。Oracle Identity ManagerとLDAP間でユーザー定義フィールドを同期化する方法の詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのOracle Identity ManagerとLDAP間でのユーザー定義フィールドの同期化に関する項を参照してください。

この項の内容は次のとおりです。

2.1.4.4.3 ユーザーの管理

Oracle Identity ManagerからLDAPにデータを同期化するには、次のユーザー操作を実行できます。

  • ユーザーの作成

  • ユーザーの更新

  • ユーザーの削除

  • ユーザーの有効化

  • ユーザーの無効化

  • ユーザーのロック

  • ユーザーのロック解除

  • ロール・メンバーの追加

  • ロール・メンバーの削除

  • パスワードの変更

2.1.4.4.4 ロールの管理

Oracle Identity ManagerからLDAPにデータを同期化するには、次のロール操作を実行できます。

  • ロールの作成

  • ロールの更新

  • ロールの削除

  • メンバーへのロールの追加

  • ロールの追加と更新

  • メンバーからのロールの削除

  • ロール階層の追加

  • ロール階層の削除

2.1.4.4.5 LDAPアイデンティティ・ストアからOracle Identity Managerへのリコンシリエーション

LDAPアイデンティティ・ストアでアイデンティティが直接変更された場合は、認証ソースのリコンシリエーションを介して、その変更をOracle Identity Managerにレプリケートする必要があります。アイデンティティには、ユーザーおよびロールが含まれます。

LDAPからOracle Identity Managerへのユーザーのリコンサイルは、リコンシリエーションのスケジュール済タスクが含まれているリコンシリエーションの一般構成で機能します。


関連項目:

スケジューラおよびスケジュール済タスクの詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのスケジュール済タスクの管理に関する項を参照してください。


注意:

LDAPからOracle Identity Managerにユーザーをリコンサイルする際に、LDAP同期化リコンシリエーション・ジョブではなく、バルク・ロード・ユーティリティを使用すると、LDAP同期化が有効な場合は、これらのユーザーに関する後続の操作に失敗する可能性があります。これを回避するには、Oracle Identity Managerにロードされているすべてのユーザーを正しいGUIDおよびDNの値で更新し、LDAP内のこれらのユーザーすべてをorclIDXPersonと呼ばれるオブジェクト・クラスで更新する必要があります。

バルク・ロード・ユーティリティの詳細は、「バルク・ロード・ユーティリティの使用」を参照してください。


ロールのリコンシリエーションは、LDAPグループでのみ機能します。ロールのリコンシリエーションでは、ロールの作成、更新および削除がサポートされています。ロール・メンバーシップのリコンシリエーションでは、外部のLDAPディレクトリで発生した変更から導出されたロール・メンバーシップの作成と削除がサポートされています。

Oracle Identity Managerにロールおよびユーザーが存在しない場合、ロール・メンバーシップのリコンシリエーションは失敗します。したがって、LDAP同期化スケジュール済ジョブは、次の順序で実行するように構成してください。

  1. Fusion Applicationsロール・カテゴリ・シーディング


    注意:

    Fusion Applicationsロール・カテゴリ・シーディングは事前定義済のスケジュール済タスクで、LDAP同期化が有効な場合のみ、他のLDAP同期化スケジュール済ジョブとともに生成されます。このジョブは、LDAP内の異なるビジネス・カテゴリをすべて取得し、OIMロール・カテゴリとして作成します。

    事前定義されたスケジュール済ジョブのリストは、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドの事前定義済のスケジュール済タスクに関する項を参照してください。


  2. LDAPロール作成および更新のリコンシリエーション

  3. LDAPロール階層のリコンシリエーション

  4. LDAPユーザー作成および更新のリコンシリエーション

  5. LDAPロール・メンバーシップのリコンシリエーション

Fusion Applicationsロール・カテゴリ・シーディングを除くこれらの各ジョブには、完全リコンシリエーションを実行するためのパラレル・ジョブがあります。Fusion Applicationsロール・カテゴリ・シーディングを除くこれらすべてのジョブは、変更ログに基づいてリコンシリエーションを実行しますが、完全リコンシリエーション・ジョブは、検索ベースを使用してリコンシリエーションを実行します。

2.1.4.4.6 統合されたLDAP同期化完全リコンシリエーション

統合されたLDAP完全リコンシリエーションのスケジュール済ジョブは、次のジョブを順番に実行します。

  1. LDAPユーザー作成および更新の完全リコンシリエーション

  2. LDAPロール作成および更新の完全リコンシリエーション

  3. LDAPロール・メンバーシップの完全リコンシリエーション

  4. LDAPロール階層の完全リコンシリエーション


関連項目:

統合されたLDAP完全リコンシリエーションのスケジュール済ジョブの詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのLDAPスケジュール済タスクに関する項を参照してください。

統合されたLDAP完全リコンシリエーションのスケジュール済ジョブを実行すると、次のジョブを特定の順序で実行する必要があるため、以前のジョブのジョブ・ステータスや特定ジョブのイベント・ステータスがすべてチェックされます。実行できないジョブがあれば、ジョブの停止が自動実行され、診断ログにエラー・メッセージが記録されます。


注意:

LDAPユーザー削除の完全リコンシリエーション・ジョブとLDAPロール削除の完全リコンシリエーション・ジョブは、統合されたLDAP完全リコンシリエーションの一部ではありません。これらのスケジュール済ジョブは、デフォルトで使用禁止にされています。ラジオ・ボタンを選択すると有効にでき、それぞれを実行することもできます。

統合されたLDAP同期化完全リコンシリエーション・ジョブの詳細ページのラジオ・ボタンを選択して、それぞれのジョブを実行することもできます。ジョブの詳細ページには、4種類の完全リコンシリエーション・ジョブに対するすべての共通パラメータがあります。また、統合されたLDAP同期化完全リコンシリエーションのスケジュール済ジョブの次のパラメータに対して値を指定できます。

  • リコンシリエーション検索ベース: ユーザーまたはロールの完全リコンシリエーションに対する検索ベース。これにより、LDAPが検索を開始するLDAPディレクトリ内の場所が定義されます。

  • リコンシリエーション・ロール検索フィルタ: ロールの完全リコンシリエーションに対する検索フィルタ。このフィルタにより、LDAPディレクトリのサブツリー内の特定のロール/グループ・エントリを可能にし、その他を除外できます。

  • リコンシリエーション・ユーザー検索フィルタ: ユーザーの完全リコンシリエーションに対する検索フィルタ。このフィルタにより、LDAPディレクトリのサブツリー内の特定のユーザー・エントリを可能にし、その他を除外できます。

統合されたLDAP同期化完全リコンシリエーション・ジョブを実行すると、リコンシリエーション検索ベースおよび/またはリコンシリエーション・ユーザー検索フィルタおよびリコンシリエーション・ロール検索フィルタのパラメータに入力された値に基いて、LDAPからOracle Identity Managerにユーザー・アカウントおよびロール・アカウントが投入されます。この完全リコンシリエーションの結果、LDAPの特定のノードから削除されたエントリに対してOracle Identity Managerデータベースで削除されます。

リコンシリエーション検索ベースおよびリコンシリエーション検索フィルタのパラメータによるサポートは、次のとおりです。

  • LDAPからOracle Identity Managerデータベースへのユーザー・アカウントまたはロール・アカウントのリコンサイル

    これにより、特定のユーザーまたはロールのきめ細かなリコンシリエーションを実行するオプションが提供されます。リコンシリエーション検索ベース・パラメータの値は、次のようになります。

    "cn=cokeuser1,cn=users,cn=subrealm1,dc=us,dc=oracle,dc=com"
    
  • ノード下のすべてのユーザーおよびロールまたはグループのリコンサイル

    リコンシリエーション検索ベースの値は、次のようになります。

    "cn=tenant1,dc=us,dc=oracle,dc=com"
    

    ここで、ユーザーの完全リコンシリエーションとロールの完全リコンシリエーションが起動されます。その結果、tenant1ノード下のすべてのユーザーおよびロールまたはグループがリコンサイルされます。

  • ノード下のすべてのユーザーのリコンサイル

    リコンシリエーション検索ベースの値は、次のようになります。

    "cn=users,cn=tenant1,dc=us,dc=oracle,dc=com"
    

    ここで、tenant1ノード下のすべてのユーザーがリコンサイルされます。

  • ノード下のすべてのロールまたはグループのリコンサイル

    リコンシリエーション検索ベース・パラメータの値は、次のようになります。

    "cn=groups,cn=tenant1,dc=us,dc=oracle,dc=com"
    

    ここで、tenant1ノード下のすべてのロールまたはグループがリコンサイルされます。

リコンシリエーション検索ベースおよびリコンシリエーション検索フィルタのパラメータは、LDAP同期化完全リコンシリエーションにはバインドされていません。リコンシリエーション検索フィルタは空白にできます。検索ベースは、Oracle Identity ManagerからLDAPへのプロビジョニングまたはエントリの投入に使用できます。一方、リコンシリエーション検索ベースは、LDAPからOracle Identity Managerデータベースへの完全リコンシリエーションの実行に使用できます。リコンシリエーション検索ベースに値が指定されない場合、プロビジョニングと完全リコンシリエーションの両方に対してディレクトリ・サーバーのITリソース構成の検索ベースの値が使用されます(リコンシリエーション検索ベース・パラメータのサンプル値は、次のようになります)。

"cn=tenant1,dc=us,dc=oracle,dc=com"

検索ベース・パラメータのサンプル値は、次のようになります。

"dc=us,dc=oracle,dc=com"

リコンシリエーション・ユーザー検索フィルタおよびリコンシリエーション・ロール検索フィルタのパラメータのサンプル値は、次のようになります。

(objectclass=orclAPPIDPerson)
(title=foobar)

統合されたLDAP同期化完全リコンシリエーションのスケジュール済ジョブに対してログ記録されたメッセージ

次のリストは、統合されたLDAP同期化完全リコンシリエーションのスケジュール済ジョブに対して、Oracle Identity Manager診断ログ・ファイルに記録されたメッセージです。

LDAP Sync Full Reconciliation Scheduler job {0} is currently Running.
LDAP Sync Full Reconciliation Scheduler job {0} is not currently Running. It has Stopped.
LDAP Sync Full Reconciliation Scheduler job {0} is currently being Interrupted while running.
LDAP Sync Full Reconciliation Scheduler job {0} is not currently Running. It has Failed.
Error occurred while running the LDAP Sync User Full Reconciliation scheduler job. Please refer to the OIM Server logs for more details.
LDAP Sync Full Reconciliation Scheduler job {0} is not currently Running. It has been Shutdown.
LDAP Sync Full Reconciliation Scheduler job {0} is not currently Running.
SQLException has occurred.
All LDAPSync Full Reconciliation jobs ran successfully and Stopped.

2.2 システム・コンポーネント

Oracle Identity Managerは、オープンでスケーラブルな企業規模のモジュール型アーキテクチャに基づいて構築されています。各モジュールは、システムの全体の機能において重要な役割を果します。図2-11に、Oracle Identity Managerのシステム・コンポーネントを示します。

図2-11 Oracle Identity Managerのシステム・コンポーネント

OIMのシステム・コンポーネント
「図2-11 Oracle Identity Managerのシステム・コンポーネント」の説明

Oracle Identity Managerのユーザー・インタフェースは、プロビジョニング環境を定義および管理します。Oracle Identity Managerには、次の2つのユーザー・インタフェースがあり、管理者とユーザーの両方の要件を満しています。

  • 開発者およびシステム管理者のための強力なJavaベースのOracle Identity Manager Design Console


    注意:

    Oracle Identity ManagerのSYSTEM ADMINISTRATORSグループに属するユーザーのみが、Design Consoleにログインできます。

  • アイデンティティ管理者およびユーザーそれぞれに対するWebベースの管理およびOracle Identity Managerセルフ・サービス・インタフェース

この項では、Oracle Identity Managerの次のコンポーネントについて説明します。

アイデンティティ管理

アイデンティティ管理には、Oracle Identity Managerでのアイデンティティの作成および管理が含まれます。アイデンティティには、ユーザー、組織およびロールがあります。アイデンティティ管理では、パスワードの管理およびユーザーによるOracle Identity Managerセルフ・サービス操作も可能です。アイデンティティ管理は、Oracle Identity Manager管理、Oracle Identity Managerセルフ・サービスWebクライアントおよびSPML Webサービスを使用して実行されます。

プロビジョニング

プロビジョニング・トランザクションは、プロビジョニング・モジュールで作成および変更されます。このモジュールでは、「誰が」、「何を」プロビジョニングするかが保持されます。ユーザー・プロファイル、アクセス・ポリシーおよびリソースは、ビジネス・プロセス・ワークフローやビジネス・ルールと同様に、プロビジョニング・モジュールで定義されます。

プロビジョニング・サーバーは、Oracle Identity Managerの実行時エンジンです。これは、Oracle Identity Manager管理およびOracle Identity Manager Design Consoleを介して定義され、プロビジョニング・モジュール内に保持されているプロビジョニング・プロセス・トランザクションを実行します。

監査およびレポート

監査およびコンプライアンスの機能には、個人、組織、システム、プロセス、プロジェクトまたは製品の評価が含まれます。この機能は、スイーツのワークフロー・エンジン、ポリシー・エンジンおよびリコンシリエーション・エンジンによって生成されたデータを取得することで発生します。このデータをアイデンティティ・データと組み合せることで、企業は、アイデンティティに対する処理および関連する監査照会へのアクセスに必要な情報をすべて入手できます。監査は情報の有効性と信頼性を確認するために実施され、システムの内部制御の査定も提供します。

レポートは正式な文書を生成するプロセスで、監査の結果として作成されます。その後、レポートは、ユーザー(個人、グループ、企業、政府、一般市民など)が監査の結果に基づいて意思決定できるように、保証サービスとしてユーザーに提供されます。企業では、プロビジョニング環境の過去と現在の両方の状態についてレポートを作成できます。取得したアイデンティティ・データの中には、ユーザー・アイデンティティ・プロファイルの履歴、ロールのメンバーシップ履歴、ユーザーのリソース・アクセスおよび詳細な権限の履歴などがあります。

リコンシリエーションおよびバルク・ロード

リコンシリエーション・エンジンは、Oracle Identity Managerのプロビジョニング環境と企業内のOracle Identity Managerの管理リソースの間の整合性を保証します。また、Oracle Identity Managerの外で作成された不正アカウントを検出します。また、リコンシリエーション・エンジンは、プロビジョニング・システムの内外にあるビジネス・ロールを同期化して整合性を確認します。

組織の他のリポジトリからOracle Identity Managerに大量のデータをロードする場合は、バルク・ロード・ユーティリティを使用できます。バルク・ロード・ユーティリティは、データ・ロードでの停止時間を短縮します。さらに、バルク・ロード・ユーティリティは、Oracle Identity Managerのユーザー、ロール、メンバーシップおよびユーザーにプロビジョニングされたアカウントをインポートします。

共通のサービス

Oracle Identity Managerの他のコンポーネントで共有され、使用される様々なサービスはまとめてグループ化されます。これには次のサービスがあります。

  • フォーム・デザイナ: Oracle Identity Managerにあらかじめ含まれていないプロセスおよびリソース・オブジェクトのフォームを作成できるフォーム。

  • スケジューラ: 特定のスケジューラで特定のジョブを実行する機能を提供するサービス。ユーザー、アプリケーション開発者、コネクタ開発者および管理者は、このサービスを使用してジョブを作成し、指定した間隔で実行するように構成できます。このサービスでは、ジョブの機能およびそのスケジュールを管理する管理機能も提供されます。

  • 通知テンプレート: Oracle Identity Managerで発生するイベントについて関係者に通知を送信するために、共通の通知サービスが他の機能コンポーネントによって使用されます。また、このサービスでは、通知テンプレートを管理する機能も提供されます。送信通知の送信には通知テンプレートが使用されます。通常、これらのテンプレートには、よりコンテキストに依存した内容を提供するために使用可能なデータを参照する変数が含まれています。

  • システム・プロパティ: システム・プロパティは、アプリケーションの構成を制御するエンティティです。デフォルトのシステム・プロパティに加え、Oracle Identity Managerのシステム・プロパティも作成および管理できます。

  • デプロイメント・マネージャ: デプロイメント・マネージャは、Oracle Identity Manager構成のエクスポートおよびインポートに使用するツールです。デプロイメント・マネージャを使用すると、Oracle Identity Managerの構成を形成するオブジェクトをエクスポートできます。

ワークフローおよびリクエスト管理

Oracle Identity Managerの様々な操作は直接実行できません。かわりに、操作をリクエストする必要があります。リクエスト管理サービスでは、リクエストを作成、承認および管理するためのメカニズムを提供します。リクエストは特定のアクションを実行する必要があるユーザーまたは管理者が作成したエンティティで、アクションを実行するには、誰かまたはなんらかのプロセスから事前に任意の権限を取得しておく必要があります。たとえば、ユーザーはラップトップ・コンピュータへのアクセス権を取得するためのリクエストを作成し、マネージャはリクエストを承認してオープン購買依頼を作成し、ITリソース管理者はリクエストを承認できます。

プロビジョニング・ソリューションの主要な目標は、リクエストおよびプロビジョニング・リソースを管理することです。リクエスト・サービスは、Business Process Execution Language (BPEL) 11gワークフロー・エンジンに対して抽象レイヤーを提供します。リクエスト、プロビジョニングおよび証明などの機能コンポーネントは、人による承認を得るためワークフロー・エンジンと相互に作用します。リクエスト・サービスは、ワークフロー・インスタンスおよびカテゴリを管理することでOracle Identity Managerの様々な機能コンポーネントに対応し、BPELに対して抽象レイヤーを提供します。

インフラストラクチャおよびミドルウェア統合

アダプタ・ファクトリ、カーネル・オーケストレーション・メカニズム、コンテキスト・マネージャおよびプラグイン・フレームワークは、これらのシステムとのハードコード統合の必要性を排除するように設計されています。

コネクタ・フレームワーク

Oracle Identity Managerの統合ソリューション戦略では、様々な異種アイデンティティを認識するITシステムに対するコネクタが提供されます。この戦略は、最小限のカスタム開発、最大限のコード再利用、および開発時間の短縮を目的としています。統合ソリューションの層は、次のとおりです。

  • 事前定義済コネクタと事前定義済汎用テクノロジ・コネクタのプロバイダを使用する基本設定の統合

  • アプリケーションの実装を、そのアプリケーションの接続試行先のシステムへの依存性から切り離すように設計されているアイデンティティ・コネクタ

  • カスタムの汎用テクノロジ・コネクタのプロバイダに基づいたコネクタ

  • アダプタ・ファクトリを使用するカスタム・コネクタ