Chinaunix首页 | 论坛 | 博客
  • 博客访问: 189059
  • 博文数量: 19
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1062
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-10 15:52
个人简介

经历过才能真的感受,做一个靠谱的人!

文章分类

全部博文(19)

文章存档

2015年(1)

2013年(18)

我的朋友

分类: 架构设计与优化

2013-09-29 20:42:49

                                                                                                 LDAP连接AD域失败原因分析 

Windows域管理机制ADLDAP协议的一种实现,通过LDAP的接口可以实现对AD的编程,很多项目的同一用户管理都会用到AD域管理,比如虚拟化平台项目。下面是使用LDAPAPI连接AD域时出现的问题,供大家借鉴。

点击(此处)折叠或打开

  1. <?php
  2. // using ldap bind

  3. $ldaprdn = "oa\zhangsan"; // ldap rdn or dn

  4. $ldappass = "ad123456"; // associated password

  5. // connect to ldap server
  6. $ldapconn = ldap_connect("rd.nic.ac.cn")
  7.     or die("Could not connect to LDAP server.");
  8. if ($ldapconn) {
  9.     // binding to ldap server

  10.     echo "come on!".$ldapconn;
  11.     echo "你不好!";
  12.     $ldapbind = ldap_bind($ldapconn);
  13.     //$ldapbind = ldap_bind($ldapconn,$ldaprdn,$ldappass);

  14.     // verify binding
  15.     if ($ldapbind) {
  16.         echo "LDAP bind successful...";
  17.     } else {
  18.     //echo ldap_error($ldapconn);

  19.         echo "LDAP bind failed...";
  20.     }
  21. }
  22. ?>

错误内容:


点击(此处)折叠或打开

    come on!Resource id #2你不好!
    Warning: ldap_bind(): Unable to bind to server: Can't contact LDAP server in E:\www\web\testLDAP.php on line 10
    LDAP bind failed...

解决办法:

1、ldap_connect():当连接成功时,返回一个正的连接标示符,连接错误就返回false。当使用openLDAP 2.x.xldap_connect()总是返回一个资源标示符,但是并没有真正连接,只是初始化了一些基本参数,在执行一些ldap_*函数时,通常是ldap_bind,才会真正连接。

 

2、搭建AD环境,需要建立一个DNS域服务器,所以在连接ADldap_connect(域名),该域名必须能找到(能够ping通该域名),也就是需要配置本机的DNSAD环境中DNS域服务器的IP,这样就能连接上AD了。

 

3、另外可以直接通过连接AD域中DNS服务器的IP,修改$ldapconn = ldap_connect ("rd.ncic.ac.cn")$ldapconn = ldap_connect()

    问题:

    根据程序的逻辑分支,错误的以为已经找到AD域并连接成功,事实上ldap_connect()可能只是完成了一些参数的初始化,并未真正连接。



阅读(26683) | 评论(3) | 转发(0) |
给主人留下些什么吧!~~

skyornig2013-10-07 20:17:33

:AD严重依赖DNS。

你清楚怎么使用 LdapAuthentication.php 连接AD域吗?求指导。。。

回复 | 举报

skyornig2013-10-07 13:26:57

:AD严重依赖DNS。

晓得了,摸索中前进!

回复 | 举报

2013-10-03 13:58:00

AD严重依赖DNS。