容器と葉
Active Directoryドメインサービスにはオブジェクトの階層があり、ディレクトリ階層のルートを除くすべてのオブジェクトインスタンスは、他のオブジェクトに含まれている。 この階層構造は、ディレクトリとファイルからなるファイルシステムよりも柔軟である。 その代わりに、ルールがある。 Active Directory スキーマ, どのオブジェクト・クラスが他のどのオブジェクト・クラスのインスタンスを含むことができるかを決定する。 例えば、デフォルトのスキーマ定義は ユーザー オブジェクトクラスには 組織単位 そして コンテナ つまり、親オブジェクトになりうるオブジェクトや、そのコンテナになりうるオブジェクトです。User オブジェクトのインスタンスである。 つまり 組織単位 object can contain a ユーザー object, but a User オブジェクトに別の ユーザー オブジェクトのスキーマ定義がない限り User クラスが変更される。
スキーマ・オブジェクトを除いて、つまり classSchema または attributeSchema オブジェクトは、サーバーフォレスト内に存在できるクラスと属性を定義するもので、Active Directoryドメインサービス内のどのオブジェクトもコンテナになる可能性がある。 具体的には、オブジェクト・クラスが possSuperiors または systemPossSuperiors 属性はコンテナである可能性があります。 定義済みオブジェクトクラスのコンテナについては、以下を参照してください。 Active Directoryドメインサービスのリファレンス. プログラムで抽象スキーマにバインドして IADsClass::get_Containment or IADsClass::get_PossibleSuperiors メソッドを使用して、指定したクラスが含むことができる、あるいは含まれることができるクラスを取得します。 詳しくは 抽象スキーマの読み込み. を読むこともできる。 可能な上級生 属性を使って、そのオブジェクトが含むことのできるオブジェクト・クラスを決定することができます。 次のことに注意してください。 可能な上級生 は構築された属性である。 上司/systemPossSuperiors 他のクラス定義の値であり、実際にはディレクトリには格納されない。
Active Directoryスキーマは コンテナ クラス. 前述したように、オブジェクトは コンテナ クラスをコンテナにする。 また リーフ このクラスのサブクラスは通常コンテナではないが、コンテナにできない理由はない。
最後に、オブジェクト・クラスに関連付けられている表示指定子にフラグを設定することで、ユーザー・インターフェースが常にそのクラスのインスタンスをコンテナではなくリーフとして表示することを示すことができる。 これは、コンテナが多すぎてユーザーインターフェイスが乱雑になるのを防ぐのに役立つ。 詳しくは コンテナをリーフノードとして見る.