[发明专利]基于LDAP协议的客户端与服务器的交互方法及系统有效
申请号: | 200810089852.7 | 申请日: | 2008-04-03 |
公开(公告)号: | CN101447981A | 公开(公告)日: | 2009-06-03 |
发明(设计)人: | 昂卫武 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/56;G06F17/30 |
代理公司: | 北京康信知识产权代理有限责任公司 | 代理人: | 尚志峰;吴孟秋 |
地址: | 518057广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 ldap 协议 客户端 服务器 交互 方法 系统 | ||
技术领域
本发明涉及通信领域中的轻量级目录访问协议(Lightweight Directory Access Protocol,简称为LDAP),具体地,涉及基于轻量 级目录访问协议的客户端与服务器的交互方法及系统。
背景技术
轻量级目录访问协议(Lightweight Directory Access Protocol, 简称为LDAP)是用于访问目录服务的一个标准的,可扩展的互联 网协议,该协议部分基于X.500标准,但其更简单,更精炼,可扩 展性更好。
本文涉及的LDAP协议的概念包括:
(1)目录(Directory),存放对象的信息,这些信息以某种顺 序组织,用于详细描述每个对象;
(2)目录信息树(Directory Information Tree,简称为DIT), 其中,目录条目的集合构成了目录信息树。
(3)条目(Entry),是目录信息树中的一个结点,是对象信息 的集合,也是目录信息中最基本的单位,包含对象的一系列属性。
(4)属性(Attribute),用于描述对象的特征,一个属性包括 属性类型(type)和一个或多个属性值。
图1示出了简化的DIT结构。如图1所示,该DIT有三层,第 一层为DIT的根,表示中国C=CN;第二层的两个条目表示两家公 司O=XXX和O=YYY;第三层的左边四个条目表示XXX公司有四 个职员,分别是Zhang、Wang、Li、Cheng。各条目之具体属性未 列出。
为了和服务器端交互,完成DIT的存储和访问,LDAP客户端 需要包含应用部分和LDAP适配层,两者以LDAP API(Application Programming Interface,应用程序接口)为接口,如图2所示。LDAP 适配层提供标准的API接口的实现,LDAP客户端调用API接口完 成对LDAP服务器的访问。
在RFC1823中定义了C语言形式的访问LDAP服务器的API 接口。LDAP客户端与服务器端基本的交互流程包括:(1)建立连 接;(2)绑定和权限认证;(3)客户端发起增删查改操作;(4)客 户端检查服务器端的响应结果;(5)客户端发起后续操作;(6)客 户端关闭连接。
以下主要描述与本发明相关的第(3)步和第(4)步。客户端 发起增删查改操作,可以使用同步调用接口或者异步调用接口。以 下主要描述RFC1823对异步调用接口的定义。(为了便于描述,以 ldap_add接口为例,ldap_modify和ldap_delete可以相同处理) ldap_add接口定义如下:
int ldap_add(LDAP*ld,char*dn,LDAPMod*attrs []);
客户端调用此接口后,会得到一个整形的返回值,我们称之为 消息序列号msgid。由于是异步调用,因此需要客户端定时调用 LDAP_Result接口检查服务器端返回的结果。LDAP_Result接口定 义如下:
int ldap_result(
LDAP *ld,
int msgid,
int all,
struct timeval *timeout,
LDAPMessage **res
);
其中,msgid入参即为前面调用LDAP_ADD的返回值。 LDAP_Result接口用户检查服务器端是否已经返回了对应msgid的 响应。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810089852.7/2.html,转载请声明来源钻瓜专利网。