Active Directory 服务接口对象
ADSI 对象模型由 COM 对象组成。 客户端使用接口操作对象。 ADSI 提供程序实现对象及其接口。
ADSI 对象是表示目录服务中的项的 COM 对象:计算机、用户、文件、服务器、打印机、打印队列等:也就是说,网络管理员每天使用的元素。 ADSI 定义不同类型的对象来表示不同类型的元素。 如下图所示,每个对象都支持一个或多个 COM 接口,这些接口支持访问对象数据(通常称为元数据)。
由于 COM 接口是逻辑上连接的属性和方法集,因此可以将每个接口视为一个对象句柄,该句柄一次只提供一组逻辑函数的访问权限。 下表列出了基本的 ADSI 元素。
接口 | 说明 |
---|---|
IADs | 用于对象标识。 作为所有 ADSI 对象所需的基本接口, IAD 提供对对象元数据的访问,包括其在 ADSI 架构中的定义。 IAD 还提供对属性缓存中管理对象数据的属性和方法的访问权限。 |
IADsContainer | 用于对象管理和检测。 所有 ADSI 容器对象都需要 IADsContainer 接口来管理对象创建、删除、复制和移动、绑定和枚举。 |
IADsPropertyList | 用于对象属性管理。 IADsPropertyList 接口优化属性缓存中对象数据的管理。 |
IDirectoryObject | 用于直接对象访问。 IDirectoryObject 接口为不使用自动化的客户端提供低级别对象访问。 此接口绕过对象属性缓存,并提供对对象属性的直接访问。 有关详细信息,请参阅 IADs 和 IDirectoryObject 接口。 |
IUnknown | 用于 COM 对象管理。 所有 COM 对象都需要 IUnknown 接口。 |
IDispatch | 用于类型库数据和方法调用。 所有自动化对象都需要 IDispatch 接口。 |
更复杂的 ADSI 对象可能会公开其他接口。 例如, IADsCollection 支持管理相同数据类型的目录元素集合的方法。 IADsGroup 方法管理支持 IADsMembers 接口的对象的特殊情况集合。 对于支持它的提供程序, IDirectorySearch 接口支持查询目录服务的方法。 此外,ADSI 提供表示已知逻辑和物理项的接口。 例如,表示用户的 ADSI 对象支持 IADsUser、表示计算机支持 IADsComputer 等。 有关 ADSI 对象的详细信息,请参阅 IADs 和 IDirectoryObject 接口。 并非所有提供程序在所有接口上实现所有接口或所有方法和属性。 有关详细信息,请参阅 ADSI 参考。