繁体   English   中英

PHP:通过 SSL 连接到外部 LDAP 系统

[英]PHP: Connecting to an external LDAP system over SSL

我需要将我的应用程序连接到外部 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 服务器证书来管理某些内容。 我花了时间在谷歌上,但我仍然被这个问题所困扰。

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

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

$ad = @ldap_connect("ldaps://serverName:636", 636);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM