php进行LDAP服务验证的实现
2016-09-27 11:33
786 查看
前言
由于在网上找到一个开源的php项目,但是需要接入到内部的ldap服务器,所以必须重写项目的登录模块,就涉及到ldap服务的登录验证问题。在网上看到很多类似的代码,说实话,第一,说明不清楚,第二,代码也经不起推敲
DEMO代码
<?php // 下面是定义ldap服务相关的变量 // dn是ldap中的数据目录结构 $ldapSrv = "ldap.oschina.com"; $username = 'eric'; $dn = "cn=users,cn=accounts,dc=oschina,dc=com"; $passwd = '123qwe'; // 建立ldap服务连接 $ds=ldap_connect($ldapSrv); if($ds) { // 进行ldap账号验证,第二参数必须是具体到ldap账号的查询 // 第二参数:uid=eric,cn=users,cn=accounts,dc=oschina,dc=com // 很多代码对于第二个参数只是传入username,这样的无法验证通过的 $r=ldap_bind($ds, "uid=".$username.",".$dn, $passwd) or die("Unable to connect to LDAP server"); if($r) { // 如果验证通过,进行用户信息的查询 $sr=ldap_search($ds, $dn, "uid=".$username); $info = ldap_get_entries($ds, $sr); for ($i=0; $i<$info["count"]; $i++) { echo "dn is: " . $info[$i]["dn"] . "<br />"; echo "first cn entry is: " . $info[$i]["cn"][0] . "<br />"; echo "first email entry is: " . $info[$i]["mail"][0] . "<br /><hr />"; } ldap_close($ds); } else { echo "Unable to connect to LDAP server"; } } ?>
相关文章推荐
- 在Windows和UNIX下利用PHP和LDAP进行身份验证
- [学习日记]对SOAP头内添加信息的验证,可实现对请求WEB服务进行身份验证。
- 在PHP中利用LDAP通过活动目录(Active Directory)实现域用户登录验证的办法
- PHP LDAP连接微软活动目录进行身份验证
- Spring security 集成ldap服务,实现统一验证
- php页面访问时,统一进行权限验证的设计
- php页面访问时,统一进行权限验证的设计
- php中实现图片验证码
- ISA Server 2004 Web代理服务拒绝用户再次进行身份验证
- 采用PHP PEAR中的AUTH实现基本身份验证
- 通过使用客户端证书调用 Web 服务进行身份验证(zz)
- PHP网页服务实现注册和商店NPC管理(安装+搭建+使用+问题处理)
- 使用Pear和php socket来实现通过smtp验证发送邮件
- 使用php来实现网络服务
- 用Lighttpd加脚本实现服务器端可进行身份验证的HTTP断点续传下载
- php 表单验证实现代码
- 调用方未由服务进行身份验证
- Openldap+Postfix+courier-imap+FreeBSD实现邮件服务(v1.1)
- PHP中利用mysql进行访问统计的思路和实现代码
- 利用PHP实现通过千千静听的歌曲列表进行歌曲导入