cyborg
Новичок
Уже и так и сяк пробую его, обычным ldap_bind подключается, а ldap_sasl_bind с теми же учетными данными ругается "Invalid credentials"
Требуется авторизацию сделать по sasl
тут все ок
дальше ищу пользователя, нахожу его и пытаюсь под ним забиндиться
Требуется авторизацию сделать по sasl
PHP:
$cfg_ldap_user = 'servername';
$cfg_ldap_pass = 'serverpass';
$cfg_ldap_server = 'msk.server.ru';
$cfg_ldap_dn = 'OU=Users,DC=msk,DC=server,DC=ru';
$user = 'user';
$pass ='pass';
$connect = ldap_connect($cfg_ldap_server);
ldap_set_option($connect, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($connect, LDAP_OPT_REFERRALS, 0);
$res = ldap_start_tls($connect);
$bind = ldap_bind($connect, $cfg_ldap_user, $cfg_ldap_pass);
дальше ищу пользователя, нахожу его и пытаюсь под ним забиндиться
PHP:
$res_id = ldap_search($connect, $cfg_ldap_dn, "(&(objectClass=user)(objectCategory=person)(sAMAccountName=$user))");
$cnt = ldap_count_entries($connect, $res_id);
$entry_id = ldap_first_entry($connect, $res_id);
$user_dn = ldap_get_dn($connect, $entry_id);
//$bind2 = ldap_bind($connect, $user_dn, $pass); // работает!
$bind2 = ldap_sasl_bind($connect, NULL, $pass, 'DIGEST-MD5', NULL, $user_dn); // не работает