Вниз
Скачать: CL | DM;

Узнать имя залогированного пользователя по IP или имени машины?   Найти похожие ветки 

← →
Иксик ©   (2005-06-07 09:50) [0]

Можно ли осуществить сабж обладая админ. правами в домене? Никак не могу найти второй из двух компьютеров с одинаковым именем...


← →
АлекейК   (2005-06-07 10:09) [1]

nbtstat -A ip_address


← →
reticon ©   (2005-06-07 10:10) [2]

RAdmin тебе поможет


← →
BiN ©   (2005-06-07 10:42) [3]

Что значит залогиненный пользователь? Например, на сервере терминалов.

А вообще, если домен состоит из станций с установленным WMI, то можно получить список процессов на удаленной машине и отобрать те, которые работают в контексте безопасности НЕ системной учетной записи. На Дельфи все это реализуемо, но имхо удобнее в vb.


← →
Игорь Шевченко ©   (2005-06-07 10:59) [4]

Перечислить logon-сессии (LsaEnumerateLogonSessions), например, далее найти нужного пользователя. Правов правда может потребоваться несколько больше.

Или через lanman-api, например так

procedure TfrmMain.PrintNetUsers;
type
 PSessionInfo502 = ^TSessionInfo502;
var
 curw: PSessionInfo502;
 bufw: Pointer;
 rc, read, total, resumeh: Cardinal;
 I: Integer;
 LI: TListItem;
begin
 lvNet.Items.Clear;
 resumeh := 0;
 repeat
   bufw := nil;
   rc := NetSessionEnum(LPWSTR(FServerName), nil, nil, 502,
      bufw, 2048, read, total,  @resumeh);
   if (rc <> ERROR_MORE_DATA) and (rc <> ERROR_SUCCESS) then
     Break;
   curw := PSessionInfo502(bufw);
   for I:=0 to Pred(read) do begin
     LI := lvNet.Items.Add;
     LI.Caption := curw^.sesi502_username;
     LI.SubItems.Add(curw^.sesi502_cname);
     LI.SubItems.Add(curw^.sesi502_transport);
     LI.SubItems.Add(curw^.sesi502_cltype_name);
     Inc(curw);
   end;
   if bufw <> nil then
     NetApiBufferFree(Pointer(bufw));

 until rc <> ERROR_MORE_DATA;
 if rc <> ERROR_SUCCESS then
   RaiseLastWin32Error;
end;

Удачи!


← →
BiN ©   (2005-06-07 12:15) [5]

Игорь Шевченко ©   (07.06.05 10:59) [4]

Если мой телепатор работает верно, то автору нужно получить имя пользователя выполнившего вход в систему на удаленной машине. Я, например, не знаю как запустить LsaEnumerateLogonSessions удаленно, а NetSessionEnum вернет информацию о пользователях, открывших соединения самого разного типа, включая шары, именнованные каналы и  т.п. Вопрос в том, будет ли пользователь из списка [LogonSessions] обязательно присутствовать в списке [NetSessionEnum].

или ой?

С уважением,


← →
Игорь Шевченко ©   (2005-06-07 12:23) [6]

BiN ©   (07.06.05 12:15) [5]

Я так понял, что ему наоборот, надо получить того, кто залогинился к нему :)
Вроде, оба метода приведенные мной, эту задачу хоть как-то, но решают.

С уважением,



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
14-1120682822
GanibalLector
2005-07-07 00:47
2005.08.07
Что это ?


6-1111270447
falcon39
2005-03-20 01:14
2005.08.07
Server Socket


3-1120381822
alsov
2005-07-03 13:10
2005.08.07
Проблема с WITH READ ONLY


14-1121418558
Андрей Жук
2005-07-15 13:09
2005.08.07
Интересно, теперь будут ли книги выпускать на такой бумаге?


9-1113984845
Novice
2005-04-20 12:14
2005.08.07
Какой класс для объекта выбрать в ГЛС




   Наверх