0

我需要将我的应用程序连接到外部 LDAP 系统。我已经设法将我的应用程序连接到本地 OpenLDAP。但是当我尝试通过 SSL 连接外部设备时,我遇到了一些麻烦。

我的代码

 public static function ldapConnection($server, $port, $version, $auth_user, 
                     $auth_pass, $base_dn, $search_filter, $attributes=null)
 {
   if(!extension_loaded('ldap'))
   {
     echo "This php version does not seem comptible with LDAP. Please install the 
           php5-ldap module";
     Yii::app()->end();
   }
   if (!($connect = @ldap_connect("ldaps://ldap.unil.ch", 636)))
   {
     echo "Unable to connect to server ".$server."";
     Yii::app()->end();
   }
   if ($version == 3)
   {
     @ldap_set_option($connect, LDAP_OPT_PROTOCOL_VERSION, 3);
   }
   if (!(@ldap_bind($connect, $auth_user, $auth_pass)))
   {
     return false;
   }
   ...
   ...
 }

我的问题:

“ldap_bind”函数总是返回false

我确定用户名、密码和 LDAP 地址信息(我在 LDAP 客户端 GUI 中尝试过)。apache“ssl_module”被激活。

我知道我必须使用 LDAP 服务器证书来管理一些东西。我在谷歌上花了时间,但我仍然被这个问题困住了。

那么,谁能告诉我如何成功连接?

4

1 回答 1

0

我遇到了同样的问题,对我来说解决方案是向服务器添加一个端口

$ad = @ldap_connect("ldaps://serverName:636", 636);
于 2021-07-30T09:20:55.403 回答