Получение ошибки:
Сервер не желает выполнять
при изменении unicodePwd в AD через PHP. Однако я могу искать, добавлять, удалять и изменять любые атрибуты пользователей.
Использование учетной записи администратора для привязки, и администратор имеет полные права на изменение паролей любых пользователей.
Вот код, который я использую:
<?php
$dn = "CN=Vishal Makwana,OU=Address Book,DC=example,DC=com";
$ad = ldap_connect("ldap://example.com")
or die("Couldn't connect to AD!");
ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3);
$bd = ldap_bind($ad,"admin@example.com","admin1");
if($bd) {
echo "AD bind successfully";
}
else {
echo "Couldn't bind AD";;
}
$user["unicodePwd"] = "asdf1234";
$result = ldap_mod_replace($ad, $dn, $user);
if ($result) echo "User modified!"; else
echo "There was a problem!";
ldap_unbind($ad);
?>