Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите получить список групп из Active Directory [D7, WinXP]


MiF ©   (2005-01-28 13:24:00) 

Пишу прогу для нарезки прав на "шары" сервера.
Юзеров добавлять нет проблемм - теперь надо группы научиться.
Помогите получить список групп из Active Directory.
Приветствуются любые варианты.


Alex Konshin   (2005-01-31 12:05:00) [1]

Ага. Получилось.
Короче логин в моем случае выглядит как
CN=Alex Konshin,CN=Users,DC=home
Где первый CN указывает именно имя, а не сам логин (поэтому-то у меня и не получалось).
Нужно будет взять на заметку...


Danilka   (2005-01-31 09:16:00) [2]

[6] Alex Konshin ©   (31.01.05 08:39)
> Где об этом почитать?

1. В МСДН. :))
2. Есть примеры поисков через АДО в архиве по ссылке [3], там как-раз пути LDAP. Да и вообще, статья на том сайте по АД хорошая: http://www.agnisoft.com/adsi/Conf2000/3132.htm
Хоти и индусами, тобой нелюбимыми написана. :))


Alex Konshin   (2005-01-31 08:39:00) [3]

Кстати, должен же быть доступ по LDAP к Active Directory.
Никто не пробовал?
О! Порт стандартный - 389. Как anonymous приконнектился, но вижу только корень.
Очевидно, что нужно коннектится не под anonymous.
А как примерно выглядит будет мой логин? Просто uid=<мой логин> не понимает. Видимо нужно еще как-то домейн написать...
uid=<login>, dc=<domain> тоже не работает.
Где об этом почитать?


MiF   (2005-01-31 08:23:00) [4]

Еще раз спасибо! Модуль проверил. Всё работает! Сегодня прикручу к своей проге!


MiF   (2005-01-31 08:14:00) [5]

Спасибо, попробую прикрутить!!!


Danilka   (2005-01-28 15:09:00) [6]

MiF ©   (28.01.05 13:24)
Хорошие примеры работы с Активе Директори из Дельфей и, в частности, с пользователями, есть вот-здесь:
http://www.agnisoft.com/adsi/adsicode.zip

Получение списка групп:

uses ActiveX, ActiveDs_TLB, adshlp;

procedure TForm1.Button1Click(Sender: TObject);
var
 dom: IADsContainer;
 e : IEnumVARIANT;
 varArr : OleVariant;
 lNumElements : ULong;
 obj : IADs;
 hr : integer;
begin
 ADsGetObject('WinNT://'+YourDomain , IADsContainer, dom);
 dom.Filter := VarArrayOf(['group']);
 hr := ADsBuildEnumerator(dom,e);
 while(Succeeded(Hr)) do
 begin
   hr := ADsEnumerateNext(e,1,
                   varArr ,lNumElements);
   if (lNumElements=0) then
     break;
   IDispatch(varArr).QueryInterface(IADs, obj);
   if obj<>nil then
   begin
     Memo1.Lines.Add(obj.Name);
   end;
   varArr := NULL;
 end;
end;


где: YourDomain - имя компьютера, ActiveDs_TLB, adshlp - есть в архиве, ссылку на который я тебе дал. ActiveDs_TLB - можешь сам сгенерить.


MiF   (2005-01-28 14:36:00) [7]

просмотр, добавление, ищменение прав на какую-нить папку на серваке.


Kerk   (2005-01-28 14:15:00) [8]


> нарезки

шо такэ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо