не может привязаться к каталогу LDAP при безопасном соединении с php - PullRequest
0 голосов
/ 12 января 2012

Информация об установке: У меня есть два сервера Windows.Один (Windows Server 2008 R2) - это контроллер домена (DC) с Active Directory (AD). Его имя - s1.xyz.com.Второй (Windows Server 2003 R2) сервер работает под управлением IIS, на втором сервере установлен сертификат PHP.SSL.

Я установил службы сертификатов Active Directory на сервере DC, чтобы они действовали в качестве центра сертификации (CA), а также включили LDAP через SSL (LDAPS), используя следующую ссылку:http://www.christowles.com/2010/11/enable-ldap-over-ssl-ldaps-on-windows.html

В чем проблема:
На самом деле, я хочу установить пароль для пользователей AD, поэтому мое требование - безопасное соединение (LDAPS) для этого.Я могу успешно подключиться к контроллеру домена через незащищенный порт (389) и получить доступ к данным AD, но не могу связать пользователя по безопасному соединению (через порт 636) с помощью функции PHP ldap_bind ().Когда я запускаю скрипт, он выдает «ldap_bind () [function.ldap-bind]: невозможно привязать к серверу: не удается связаться с сервером LDAP».

код:

$ip="xxx.xxx.xxx.xx";

$ldaps_url="ldaps://s1.xyz.com:636/";

$ldap_url="s1.xyz.com";

$ldapUsername ="Administrator@xyz.com";

$ldapPassword="x1y1z1";

$ds=ldap_connect($ldaps_url);

//$ds=ldap_connect($ip,636);

ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION,3);

ldap_set_option($ds, LDAP_OPT_REFERRALS,0);

$bth=ldap_bind($ds, $ldapUsername, $ldapPassword);

ldap_unbind($ds);

$ds="";

Ответы [ 2 ]

2 голосов
/ 12 января 2012

Если вы используете SSL (например, ldaps) и ldap_bind выдает 'Невозможно привязать к серверу:' ошибки, убедитесь, что имя хоста, используемое в ldap_connect, совпадает с 'CN' в сертификате SSLна сервере LDAP.Например:

<?
    ldap_connect('ldaps://ldap01');
   // 'ldap01' should match the CN in your LDAP server's SSL cert, otherwise the subsequent ldap_bind() will throw a bind error

?>

Вы можете просмотреть свой сертификат с помощью Microsoft MMC.

0 голосов
/ 12 января 2012

Возможно, s1.xyz.com не может быть разрешен.Попробуйте это с IP вместо этого.Как ldaps: //ip.goes.here: 636.

...