教程学院
图像设计 多媒体类 机械制图 办公软件 操作系统 系统编程 网站编程 网页制作 数据库类 网络路由 网络工程 网络安全 考试认证
酷网学院
CAD
AutoCad Cam350 ProEngineer GCcam MATLAB Unigraphics SolidWorks CAXA Solid3000 Cimatron EdgeCAM
系统
安全 防火墙 病毒 WinXP Win2003 Vista
数据库
编程
网络
精彩图库
  当前位置: 库库中文网 · 网站编程教程 · PHP教程 · PHP基础教程

目录服务技术介绍——ADSI(四)

学院最新推荐文章
教程推荐
『目录服务技术介绍——ADSI(四)』如果文章有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2005-11-19 
从类别到对象,它可以指定属性,那么目录对象的属性如何被指定呢?ADSI通过接口IADsProperty进行描述,IADsProperty接口的属性和方法如表6所示。

表6 IADsProperty接口的属性


属性名
类型
说明

OID
BSTR
唯一的对象标识符

Syntax
BSTR
语法路径

MaxRange
long
对于多值属性,最大属性数

MinRange
Long
对于多值属性,最小属性数

MultiValued
VARIANT_BOOL
多值属性标志



最后一个重要接口为IADsSyntax,它只有一个属性,如表7所示。

表7 IADsSyntax接口的属性

属性名
类型
说明

OleAutoDataType
long
代表此语法的自动化数据类型




ADSI定义了许多接口,上面介绍的只是ADSI的基本接口,从这些接口我们可以看到,ADSI用表结构的方式描述目录对象的属性,这种方式可扩展性很强。目录对象本身是个抽象概念,它可以包含许多与应用有关的属性,ADSI目录服务提供者可以利用表结构描述这些属性,以便客户程序可以对目录对象进行有效的访问。

ADSI还定义了一些常用的目录对象使用的接口,比如IADsUser、IADsO、IADsComputer、IADsGroup、IADsOU、IADsDomain、IADsService,它们分别代表了用户、组织、计算机、用户组、部门、域、系统服务。

除了使用以上介绍的ADSI接口访问ADSI目录服务之外,客户程序也可以使用ADO的标准接口访问目录服务,它可以利用ADO的记录集对象访问ADSI的包容器,对包容器对象进行枚举或者检索。ADO与ADSI的关系如图3所示。



图3 客户程序访问ADSI目录服务的两种方法

三、ADSI编程模型

了解了ADSI的基本结构之后,现在我们再讨论ADSI的编程模型。首先,我们介绍目录对象的路径表示法,通常我们使用URL路径表示法,如下:

<Namespace>:

或者 <Namespace>://<Provider-specific stuff>

如果我们不知道名字空间的符号表示,可以从ADSI的最基础的根“ADS:”开始,比如,我们在NT 4.0下对“ADS:”进行枚举可以得到以下5个名字空间:

IIS

LDAP:

NDS:

NWCOMPAT:

WinNT:

如果我们要用ADSI访问NT用户信息,可以使用下面格式的路径:

WinNT://<domain_name>/<User_Name>

如果我们要用ADSI访问Microsoft Exchange Server的用户信息,可以使用下面格式的路径:

LDAP://<Server_Name>/cn=<User_Name>,cn=Recipients,ou=<Site_Name>,o=<Organization_Name>

这表示在<Organization_Name>组织下的<Site_Name>站点中的帐户<User_Name>,<Server_Name>为此站点的一个服务器,它提供LDAP服务。

下面我们讨论几个基本的编程问题:

(1) 绑定到路径指定的对象。

客户程序可以利用以下的方法绑定到路径所指定的对象:

□    C或者C++程序可以使用ADsGetObject或者ADsOpenObject获得指定对象的接口指针,如果我们不能确定对象支持哪个接口,我们可以在函数中指定接口IADs,因为所有的ADSI目录对象都支持此接口,函数返回之后,再调用QueryInterface成员请求其它的接口指针。

□    对于VB或者VBScript应用程序,可以调用GetObject函数得到指定的目录对象。


】【关闭窗口
·上页:
·下页:
相关文章
     网站编程教程 - PHP基础教程
推荐教程WINDOWS 2000下运用ISAPI方式安
推荐教程PHP5在Apache下地两种模式地安
推荐教程PHP程序加速探索之缓存输出
推荐教程PHP程序加速探索之脚本执行速度
推荐教程PHP程序加速探索之压缩输出gzi
推荐教程PHP程序加速探索之代码优化
推荐教程php.ini 配置详细选项
推荐教程PHP 命令行参数详细解说及运用
推荐教程Win下地PHP5.0安装配制详细解说
推荐教程Win下PHP5和Apache地安装与配置
推荐教程Win里面安装Apache2和PHP4权威
推荐教程PHP程序加速探索之服务器负载测
精彩图片汇集
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 返回顶部
网站文本地图
版权所有:库库中文 2005-2007 欢迎各种媒体转载我们的原创作品[转载请注明出处]
copyright © 2005-2008 www.QQGB.com online services. all rights reserved. 蜀ICP备05015578
Template designed by Virus. Optimized for 1024x768 to Firefox,Opera and MS-IE6. Site powered by EQL.
红盾
热爱电脑,热爱生活
拥有电脑,拥有生命
让我们享受拥有电脑的时光