Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.02.17;
Скачать: CL | DM;

Вниз

Авторизация на контроллере домена через PHP   Найти похожие ветки 

 
Dmitry S ©   (2008-01-15 16:44) [0]

Есть КД (Active Directory).
Есть имя пользователя (samid) и пароль.
Как на php проверить: 1. есть ли такой пользователь в домене, 2. такой ли у него пароль.

И если возможно, каким образом на php можно поменять пароль? (pная старый пароль)


 
antonn ©   (2008-01-15 16:48) [1]

Смотри работу с ldap: http://php.ru/manual/ref.ldap.html


 
Dmitry S ©   (2008-01-15 17:34) [2]

Спасибо. Все работает кроме изменения пароля.

Пытаюсь вписать пароль в атрибут userPassword с помощью функции ldap_modify. Пишет: Modify: Insufficient access.

К ldap серверу подключаюсь от имени пользователя, которому хочу поменять пароль. (Админских прав он не имеет).

Как быть?


 
antonn ©   (2008-01-15 17:38) [3]

а разве в АД можно без прав админа рулить?


 
Dmitry S ©   (2008-01-15 18:02) [4]


> а разве в АД можно без прав админа рулить?

Теоретически пользователь может изменить свой пароль сам (если это, конечно, разрешено ему, а обычно разрешено). А значит как-то можно изменить и самому, зная его старый пароль.


 
Dmitry S ©   (2008-01-15 18:21) [5]

Причем с правами админа сервер выдает:
Modify: Server is unwilling to perform :)) угорает:)

это я изменял поле unicodePwd, т.к. изменение предыдущего параметра эффекта не дает


 
Dmitry S ©   (2008-01-16 05:41) [6]

Под админом научился...
Для этого просто требуется чтобы подключение к LDAP было зашифровано.
Как это делать читаем тут: http://greg.cathell.net/php_ldap_ssl.html

Вот пример некого xxoes с сайта php.net

$newPassword = "\"" . $new_password . "\"";
$len = strlen($newPassword);
$newPassw = "";
for($i=0;$i<$len;$i++)
  $newPassw .= "{$newPassword{$i}}\000";
$userdata["unicodepwd"] = $newPassw;
ldap_mod_replace($dn, $userdata);


Пользователь со своими правами по прежнему менять свой пароль не может


 
ketmar ©   (2008-01-16 15:09) [7]

преобразование в юникод великолепно. помнится, точно так же было сделано в BlackBox Component Builder. у них тоже это называлось «поддержка юникода».



Страницы: 1 вся ветка

Текущий архив: 2008.02.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
15-1200306381
alles
2008-01-14 13:26
2008.02.17
Не подскажите программу...


2-1200918836
tomkat
2008-01-21 15:33
2008.02.17
поиск строки в TStringlist


2-1201472469
Саня Голиков
2008-01-28 01:21
2008.02.17
Что происходит с выделнной памятью New(NewRec)


15-1200392916
Ega23
2008-01-15 13:28
2008.02.17
Service средствами Delphi : возможено ли?


2-1199601939
vegarulez
2008-01-06 09:45
2008.02.17
Вопрос про память.