抽象架构

架构容器包含所有 classSchemaattributeSchema 对象,这些对象定义目录林中可以存在的类和属性。 架构容器还包含 subSchema 类名为 Aggregate 的对象。 此 subSchema 对象称为抽象架构。

抽象架构包含存储在 classSchemaattributeSchema 对象中的数据子集。 其用途是提供一种简单高效的机制,用于检索类和属性定义的常用元素。 例如,若要检索对象类的可选属性和必需属性,请绑定到多个对象,以从类及其所有超类,以及从类及其超类的任何辅助类中,收集 mayContainmustContainsystemMayContainsystemMustContain 值。 抽象架构方便地在单个对象中收集所有这些数据。

与 Active Directory 域服务中的任何对象一样,可以绑定到 subSchema 对象并读取其属性,从而解析字符串值,以检索所需的数据。 但是,ADSI 提供了一组接口,以便更轻松地读取抽象架构。 有关详细信息,请参阅读取抽象架构

下表列出了 subSchema 对象的关键属性。

Attribute 说明
attributeTypes 一个多值属性,其中包含表示架构中每个属性的字符串。 每个值都包含 attributeIDlDAPDisplayNameattributeSyntaxrangeLowerrangeUpper,以及一个指示属性是否可以具有多个值的项。
extendedAttributeInfo 一个多值属性,其中包含表示每个属性的其他数据的字符串。 每个值都包含 attributeIDlDAPDisplayNameschemaIDGUIDattributeSecurityGUID
extendedClassInfo 一个多值属性,其中包含表示每个类的其他数据的字符串。 每个值都包含类的 governsIDlDAPDisplayNameschemaIDGUID
objectClasses 一个多值属性,其中包含表示架构中每个类的字符串。 每个值都包含 governsIDlDAPDisplayNamemustContainmayContain 等。