獲得一個錯誤。但是,我可以搜索,添加,刪除和修改用戶的任何屬性。ldap_mod_replace()[function.ldap-MOD-取代]:修改:服務器是不願意執行
使用管理員帳戶進行綁定,管理員擁有更改任何用戶密碼的完整權限。
下面是我使用的代碼:
<?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,"[email protected]mple.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);
?>
非常感謝大衛,但我有點困惑。當我嘗試使用SSL連接時,(ldaps://)它甚至不與AD綁定。我的意思是,我是否需要在Apache或PHP中啓用SSL支持?如果是的話,我該怎麼做。 –
不應該「{$ newpassword {$ i}} \ 000」爲「{$ newpassword [$ i]} \ 000」即方括號而不是捲曲嗎? – redreinard