Identity Managerのプロビジョニングモジュールには、承認フローを実行するワークフローシステムが用意されています。ワークフロープロセスは、プロビジョニング要求定義に基づいています。プロビジョニング要求定義は、アイデンティティボールトに保管されるXMLドキュメントです。プロビジョニング要求定義は、アクティビティとリンクを使って任意のトポロジを記述しています。たとえば、エンタイトルメントを付与するプロビジョニング要求に、関連するユーザから承認を収集し、ディレクトリにエンタイトルメントを書き込むワークフローを入れることができます。
サードパーティのソフトウェアアプリケーションによるアクセスをサポートするために、プロビジョニングワークフローシステムにはWebサービスエンドポイントが用意されています。このエンドポイントは、すべてのプロビジョニング機能(例:SOAPクライアントに新しい承認ワークフローの開始を許可したり、現在実行中のフローを表示する)を提供しています。Webサービスは、Novell Web Service SDK(WSSDK)を使って作成されています。このSDKは、WS-I基本プロファイルをサポートしており、他の標準ベースのSOAP実装との相互運用性が保証されます。
この付録では、プロビジョニングWebサービスの詳細と、Webを使ったアクセス方法、およびJavaまたはC#クライアントを作成することによるアクセス方法を説明しています。また、SOAPエンドポイントの操作の概要と、Webインタフェースの使用方法についても説明しています。さらに、Identity Managerのプロビジョニングに用意されているSOAPツールキットを使ったJavaクライアントの開発方法や、Monoを使ったC#クライアントの作成方法についても説明していきます。Javaクライアントのサンプルソースコードと、関連するANTビルドファイルも記載されています。
Identity Managerは、アイデンティティボールトとワークフローアプリケーションの2つのメインシステムで構成されています。アイデンティティボールトは、データベース、金融システム、および他の企業アプリケーションなど、多数の異なるシステムに接続し、これらのシステムを同期化することができます。リモートシステムを同期化するルールは大変複雑になることがあります。アイデンティティボールトエンジンは、このルールを表記するための、洗練されたスクリプト言語をサポートしています。
ワークフローアプリケーションは、複数のサブシステムで構成されています。ユーザアプリケーションは、ワークフロー用のユーザインタフェースを提供しています。ユーザアプリケーションは、承認フローを要求、管理するための、Webアプリケーションです。Webアプリケーションはポータル内で動作します。これには、管理ポートレットも含まれます。ワークフローアプリケーションには、セキュリティ層、ディレクトリ抽象化層、およびNovell AuditやNovell Sentinelにログを送信できるログサブシステムが含まれています。ワークフローサブシステムは、承認フローの実行を担当します。ユーザアプリケーションは、アプリケーションサーバ(例:JBoss)上で動作し、データベース(例:Oracle、MySQL )にデータを保存します。
ワークフローシステムのWebサービスは、ユーザアプリケーションドライバのみが使用します。ユーザアプリケーションドライバは、アイデンティティボールトエンジンから発行される特定のイベントを待機して、それらのイベントを適切なSOAPメッセージに変換できます。たとえば、アイデンティティボールト内の特定の属性が変更された場合、アイデンティティボールトエンジンがイベントを発行します。ユーザアプリケーションは、このイベントを購読者チャネルから取得します。次に、ユーザアプリケーションドライバは、SOAPメッセージをプロビジョニングWebサービスに送信し、新しい承認フローを開始します。
プロビジョニングWebサービスエンドポイントが提供するメソッドは、6種類のカテゴリに分類されます。
表 20-1 プロビジョニングWebサービス操作カテゴリ
プロビジョニングWebサービスが提供するメソッドの詳細は、セクション 20.3, プロビジョニングWebサービスのAPIを参照してください。