您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

PHP 访问 LDAP

2024/5/5 1:43:20发布31次查看
ldap 的全称是“轻量级目录访问协议(lightweight directory access protocol)”,是一种简单的目录协议。所谓目录,是一种专门的数据库,可以用来服务于任何应用程序。在企业应用中使用 ldap可以让企业范围内的所有应用程序ldap 目录中获取信息,应用程序可以从网络上直接从 ldap 目录获取信息,而不局限于操作系统与服务器的类型。这里主要介绍如何使用 php 来访问 ldap。连接 ldap 服务器php 中用于连接 ldap 服务器的函数是 ldap_connect,其语法格式如下所示。
1ldap_connect([string hostname [, int port]])
其中,hostname 是 ldap 服务器所在的主机地址,port 是 ldap 服务器的端口号。以下代码实现了对位于 192.168.3.1 地址的 ldap 服务器的连接。
1
与前面介绍过的方法类似,上面的代码使用了“or die”来美化错误信息。绑定 ldap 服务器绑定 ldap 服务器的含义是使用特定的用户名或密码来登陆 ldap 服务器。php 中用于绑定 ldap服务器的函数是 ldap_bind,其语法格式如下所示。
1ldap_bind(ldap_conn [, string username [, string password]])
其中,ldap_conn 是前面连接 ldap 服务器时创建的连接对象,username 是登陆 ldap 服务器时使用的用户名,password 是登陆时所用的密码。以下代码实现了对位于 192.168.3.1 地址的 ldap 服务器的绑定。
1
断开 ldap 服务器与 ldap 服务器断开的过程与绑定 ldap 服务器相反,php 中用于绑定 ldap 服务器的函数是ldap_unbind,其语法格式如下所示。
1ldap_unbind(ldap_conn)
其中,ldap_conn 是前面连接 ldap 服务器时创建的连接对象。以下代码在绑定了对位于 192.168.3.1地址的 ldap 服务器后与其断开连接。
01
查询 ldap 目录内容查询 ldap 目录使用 ldap_search 函数来实现,其语法格式如下所示。
1ldap_search(ldap_conn, base_dn, conditions)
其中,ldap_conn 是前面连接 ldap 服务器时创建的连接对象。base_dn 是 ldap 服务器的查询主键。conditions 是用于 ldap 目录查询所用的条件。该函数返回一个结果对象,该结果对象保存查询到的所有记录。对于这个结果对象,可以使用 ldap_get_entries 函数进行简单的读取,其语法格式如下所示。
1ldap_get_entries(ldap_conn, result)
其中,ldap_conn 是前面连接 ldap 服务器时创建的连接对象,result 是前面查询 ldap 目录时返回的对象。该函数返回一个数组,包含所有的结果记录。以下代码实现了对服务器上的内容进行查询。
0102$ldap_host= ldap://192.168.3.1;//ldap 服务器地址
03$ldap_port= 389;//ldap 服务器端口号
04$ldap_user= ;//设定服务器用户名
05$ldap_pwd= ;//设定服务器密码
06$ldap_conn= ldap_connect($ldap_host,$ldap_port)ordie(can't connect to ldap server);//建立与 ldap 服务器的连接
07ldap_bind($ldap_conn,$ldap_user,$ldap_pwd)ordie(can't bind to ldap server.);//与服务器绑定
08$base_dn= ou=company,o=depart;//定义要进行查询的目录主键
09$filter_col= mail;//定义用于查询的列
10
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product