抽象架构

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

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

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

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

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