抽象架構
架構容器包含所有 classSchema 和 attributeSchema 對象,這些物件會定義可存在於目錄樹系中的類別和屬性。 架構容器也包含名為 SubSchema 類別的 Aggregate 物件。 這個 subSchema 對象稱為抽象架構。
抽象架構包含儲存在 classSchema 和 attributeSchema 物件中的數據子集。 其用途是提供簡單且有效率的機制,以擷取類別和屬性定義的常用元素。 例如,若要擷取物件類別的選擇性和強制屬性,請系結至多個物件以收集 mayContain、mustContain、systemMayContain 和 systemMustContain 值,以及類別及其超級類別的任何輔助類別。 抽象架構可方便收集單一物件中的所有數據。
如同 Active Directory 網域服務 中的任何物件,您可以系結至 subSchema 物件並讀取其屬性,剖析字串值以擷取所需的數據。 不過,ADSI 提供一組介面,可讓您更輕鬆地讀取抽象架構。 如需詳細資訊,請參閱 讀取抽象架構。
下表列出 subSchema 物件的索引鍵屬性。
屬性 | 描述 |
---|---|
attributeTypes | 多重值屬性,其中包含表示架構中每個屬性的字串。 每個值都包含 attributeID、 lDAPDisplayName、 attributeSyntax、 rangeLower、 rangeUpper,以及指出屬性是否可以有多個值的專案。 |
extendedAttributeInfo | 多重值屬性,其中包含代表每個屬性之其他數據的字串。 每個值都包含 attributeID、lDAPDisplayName、schemaIDGUID 和 attributeSecurityGUID。 |
extendedClassInfo | 多重值屬性,其中包含代表每個類別其他數據的字串。 每個值都包含 類別的 governsID、 lDAPDisplayName 和 schemaIDGUID 。 |
objectClasses | 多重值屬性,其中包含表示架構中每個類別的字串。 每個值都包含 governsID、 lDAPDisplayName、 mustContain、 mayContain 等等。 |