共用方式為


容器和離開

Active Directory 網域服務 包含物件的階層,除了目錄階層的根目錄之外,每個物件實例都包含在其他物件中。 此階層的結構比目錄和檔案的文件系統更有彈性。 相反地,在 Active Directory 架構,規則會決定哪些物件類別可以包含哪些其他物件類別的實例。 例如,User 物件類別的默認架構定義包括組織單位容器物件類別,盡可能優於;也就是說,User 物件實例的可能父物件或容器。 這表示,除非 User 類別的架構定義有所變更,否則組織單位物件可以包含 User 物件,但 User 物件不能包含另一個 User 物件。

除了架構物件,也就是 classSchemaattributeSchema 對象,這些物件會定義可以存在於伺服器樹系中的類別和屬性,Active Directory 網域服務 中的任何物件可能是容器。 具體而言,出現在物件類別定義之 possSuperiors systemPossSuperiors 屬性中的任何物件類別都可能是容器。 如需預先定義物件類別容器的詳細資訊,請參閱 Active Directory 網域服務 參考。 您可以透過程式設計方式系結至抽象架構,並使用 IADsClass::get_Containment IADsClass::get_PossibleSuperiors 方法來取得指定類別可包含或包含的類別。 如需詳細資訊,請參閱 讀取抽象架構。 您也可以讀取 任何物件實例的possibleInferiors 屬性,以判斷物件可包含的物件類別。 請注意,possibleInferiors 是建構的屬性,這表示它是從其他類別定義的 possSuperiors systemPossSuperiors/ 值計算,而且實際上不會儲存在目錄中。

請注意,Active Directory 架構會 定義容器 類別。 如先前所述,物件不一定是 Container 類別的實例,才能成為容器。 也有 Leaf 類別,雖然這個類別的子類別通常不是容器,但沒有理由不能。

最後,您可以在與對象類別相關聯的顯示規範上設定旗標,以指出使用者介面應該一律將類別的實例顯示為離開,而不是容器。 這有助於防止使用者介面被太多容器所雜亂。 如需詳細資訊,請參閱 將容器檢視為分葉節點