Virtual member manager の階層

Virtual member manager の階層は、LDAP ディレクトリーとの統合、特に既存のデータを持つディレクトリーとの統合を容易にするために設計されています。

すべての LDAP ディレクトリーにはディレクトリー情報ツリー (DIT) があります。 これは、LDAP サーバー上のエントリーの階層構造です。 LDAP サーバーの項目は、すべて DIT 内に場所を占めていて、LDAP エントリーの識別名 (DN) が DIT 内のそのエントリーの場所を識別します。

Virtual member manager は既存の LDAP ディレクトリーを (読み取りおよび書き込みの両方で) 使用する必要があるので、Virtual member manager の階層はエンティティーの階層構造だといえます。 この階層構造は、可能な限り LDAP DIT 構造を反映します。 これにより、Virtual member manager は作成などのさまざまな操作を使用してエントリーを LDAP ディレクトリーに入れることができるようになり、既に入っている既存の DIT 構造が優先されます。

Virtual member manager の階層構造は、Virtual member manager に階層名前空間も提供します。 LDAP ディレクトリーからのアイデアを採用して、Virtual member manager の階層名前空間内のそれぞれの名前は LDAP DN と同じ形式に従っています。 Virtual member manager では、DN は uniqueNames と呼ばれています。 それぞれの uniqueName は Virtual member manager のエンティティーを固有に識別しますが、uniqueName は静的ではなく (変更可能)、再使用が可能です。 結果として、uniqueName は長い間ではなく、ある時点でのみエントリーを固有に識別します。

Virtual member manager が複数のリポジトリーで同時に使用されると、Virtual member manager の階層は、別個のリポジトリーの uniqueNames がぶつかり合わないように、複数のリポジトリー間で分けられます。

一例として、Virtual member manager を 3 つのリポジトリーで構成します。 そのうちの 2 つは LDAP で、もう 1 つはデータベースです。LDAP ディレクトリー は、図に示す DIT 構造を持っています。 対応する Virtual member manager の階層も図に示してあります。

図 1. Virtual member manager の階層 この図は、LDAP の階層と
 Virtual member manager の階層との相違点を示しています。
Virtual member manager の階層の上部は、仮想上の root で、これは図示していません。 root の下のエントリーは、1 つ以上のメイン・リポジトリーにマップされています。
注: プロパティー拡張リポジトリーは、メイン・ リポジトリーを考慮していません。
メイン・リポジトリーからのエントリーは、 リポジトリーに割り当てられた対応するエントリーの下にあります。リポジトリーに明示的な構造 (LDAP DIT など) がない場合に、必要な変換を行うのはリポジトリー・アダプターの 責任です。例えば、図のデータベース・リポジトリーはフラットな名前空間を持っている (例えば、そのエントリーが 1 から 100 の基本キーを持っている) 場合があります。 データベース・リポジトリー・アダプターは、Virtual member manager の uniqueName をデータベースが認識できる基本キーに変換する責任を負います。

Virtual member manager は、Virtual member manager 階層の区画の下にメイン・リポジトリーからのすべてのエントリーまたはエントリーのサブセットから構成されるレルムと呼ばれる構造を提供します。 前の例を使用すると、dc=comA,dc=com がレルムと考えられます。

Virtual member manager によってエントリーが作成される場合に、 呼び出し元は、新しいエントリーが作成される Virtual member manager の階層の下にオプションで親エントリーを指定することができます。 親エントリーを指定しないと、デフォルトの親 (レルムごとに構成可能) が使用されます。 Virtual member manager では、 各レルム内の各エンティティー・タイプごとにデフォルトの親エントリーを構成することができます。

エントリーは、 構成中に Virtual member manager 階層の仮想上の root の下に定義することができ、 実行時にプログラマチックに作成することもできます。
注: これらのエントリーは、 プロファイル・リポジトリー内の実際のエントリーに対応しないことがあります。 例えば、階層内のエントリー o=comC は、 会社 C のプロファイル・リポジトリー内の実際のエントリーに対応していない可能性があります。
図示のスキーマは、複数のリポジトリーに同じ名前のエントリーがある (例えば、2 つの異なる LDAP ディレクトリーにそれぞれ o=USdiv という名前のエントリーがある) 場合に、 カスタマーが Virtual member manager の階層の root の下にそれらのエントリーのディレクトリーを構成するには、 それらのエントリーが固有の名前を持つように変更しなければならないことを示しています。 例えば、o=USdiv エントリーを持つ LDAP ディレクトリーの一方は、 そのエントリーを Virtual member manager の階層の o=USdiv エントリーにマップすることができます。 しかし、o=USdiv エントリーを持つもう一方のディレクトリーは、Virtual member manager の階層の o=USdivision などの名前のエントリーにマップしなければなりません。
注: o=USdivision は、Virtual member manager に構成された uniqueName で、これが LDAP ディレクトリーに実際のエントリーとして保管されることはありません。

Virtual member manager が 1 つのリポジトリーのみで構成される場合は、 そのリポジトリーが Virtual member manager の階層の全体を占めます。

LDAP DN の潜在的にグローバルで固有の性質を (RFC 2247 に従う場合には、 インターネット・ドメイン名を使用して) 活用するために、Virtual member manager は Virtual member manager の uniqueName の一部として (dc=com が Virtual member manager のエントリーを識別しない場合であっても) dc=com をサポートします。

Virtual member manager の階層と Virtual member manager との関係は、DIT と LDAP の関係と同じです。しかし、覚えておかなければならないいくつかの重要な点は以下のとおりです。


利用条件 | フィードバック