ディレクトリ抽象化レイヤは、ユーザアプリケーションの識別ボールトの論理ビューを定義する、XMLベースのファイルセットです。ユーザアプリケーションは、ディレクトリ抽象化レイヤ定義を使用して、次のことを決定します。
ユーザアプリケーションで表示または変更できる識別ボールトオブジェクトおよび属性。
ユーザアプリケーションで識別ボールトデータを表示する方法。
ユーザアプリケーションで表示できる関係。
ユーザアプリケーションで表示できるプロビジョニング要求カテゴリ、電子メール通知タイプ、および委任関係。
ユーザアプリケーションには、機能するために必要なエンティティ、関係、およびリストのデフォルトセットが用意されていますが、新しいディレクトリ抽象化レイヤを追加したり、既存のディレクトリ抽象化レイヤを変更したりすることで、ビジネスニーズに合わせてユーザアプリケーションをカスタマイズできます。ディレクトリ抽象化レイヤエディタ(セクション 3.1.2, ディレクトリ抽象化レイヤエディタについてで説明)を使用して、ディレクトリ抽象化レイヤの内容を定義します。
ディレクトリ抽象化レイヤオブジェクトに変更を加える前に、ユーザアプリケーションで識別ボールトデータを表示する方法を分析します。次の事項を検討してください。
ユーザアプリケーションで使用できるようにする識別ボールト要素。
たとえば、ユーザが検索および表示できるオブジェクトを検討し、リストアップします。このリストを、抽象化レイヤ定義の基本セットと比較し、新しいオブジェクトを追加する必要があるかどうかを判断します。
識別ボールトスキーマの構造。カスタム拡張子および補助クラスの有無。
データの構造。
必須のデータとオプションのデータ。
適切な検証ルール。
オブジェクト間の関係(DN参照)。
属性の定義方法(たとえば、電話番号を表す属性は、自宅、オフィス、および携帯電話の電話番号など複数の値が含まれることがあります)
データの表示対象。ユーザアプリケーションを公開サイトとして使用できるようにするか、プライベートサイトにするか。
データニーズに関するこれらの情報を使用して、識別ボールトオブジェクトを抽象化レイヤエンティティにマップします。
ディレクトリ抽象化レイヤエディタは、ディレクトリ抽象化レイヤファイルを定義するためのグラフィカルツールです。ユーザアプリケーションドライバをIdentity Managerプロジェクトに追加して設定ウィザードを実行すると、Designerによってディレクトリ抽象化レイヤの初期ファイルセットが作成されます。設定ウィザードを実行しなければ、初期ファイルは作成されません。作成された基本ファイルは、ディレクトリ抽象化レイヤエディタの起動時に表示されます。
ディレクトリ抽象化レイヤエディタを起動する
を開いて、 ノードをダブルクリックします。
、 、 、および ノードを含むディレクトリ抽象化レイヤツリーが表示されます。
左側のペインを使用して、ディレクトリ抽象化レイヤノードをナビゲートします。左側のペインで項目を選択すると、選択した項目のプロパティが右側のペインに表示されます。
右側のペインを使用して、選択した項目のプロパティを定義します。プロパティの詳細については、「セクション 3.7, ディレクトリ抽象化レイヤプロパティのリファレンス」を参照してください。
次の表は、[ディレクトリ抽象化レイヤ]ツールバーについて説明しています。
作業するディレクトリ抽象化レイヤファイルは、DesignerプロジェクトのProvisioning\AppConfig\DirectoryModelディレクトリに保存されます。ファイル名はオブジェクトキーから派生します。
表 3-2 ローカルのディレクトリ抽象化レイヤディレクトリ
Designerによって、各プロビジョニングプロジェクトのディレクトリ抽象化レイヤファイルの基本セットが作成されます。同じファイルセットが、ユーザアプリケーションのインストール時にユーザアプリケーションドライバに展開されます。
Identity Managerユーザアプリケーションをカスタマイズするには、ディレクトリ抽象化レイヤオブジェクトを変更し、変更内容をユーザアプリケーションドライバに展開します。エンティティ、属性、リスト、および関係の中には、ユーザアプリケーションが正常に機能するために必須のものがあります。エディタでは、削除できない定義は鍵アイコン付きで表示されます。次の図を見ると、
、 、または エンティティは削除できないことがわかります。図 3-1 DALユーザアプリケーションのデフォルトのエンティティ、リスト、および関係
1つのプロジェクトに複数のユーザアプリケーションドライバを定義すると、複数のAppConfigフォルダが作成され、AppConfig、AppConfig1、AppConfig2のようにフォルダ名が付けられます。