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

Вниз

Получение уровня привелегий процесса   Найти похожие ветки 

 
AngelFire   (2005-09-01 18:01) [0]

Уважаемые Мастера и подмастерья!
  Не подскажете, каким образом можно (программно!) получить уровень привелегий запущенного процесса, имея в наличии только хэндл процесса, и, при необходимости, поднять уровень привилегий процесса? А также, каким образом запустить процесс/изменить параметры запущенного чтобы он выполнялся с правами конкретного пользователя (чаще всего, администратора)?


 
Игорь Шевченко ©   (2005-09-01 18:07) [1]


>   Не подскажете, каким образом можно (программно!) получить
> уровень привелегий запущенного процесса, имея в наличии
> только хэндл процесса


OpenProcessToken, GetTokenInformation (...TOKEN_PRIVILEGE...)


> и, при необходимости, поднять уровень привилегий процесса?
>


function HSEnablePrivilege (const PrivilegeName: String): Boolean;
var
 LUID: TLargeInteger;
 Priv: TTokenPrivileges;
 AccessToken: THandle;
 ReturnLen: Cardinal;
begin
 Result := OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES, AccessToken);
 if not Result then
   Exit;
 Result := LookupPrivilegeValueA(nil, PChar(PrivilegeName), LUID);
 if not Result then //Привилегия не нашлась
   Exit;
 Priv.PrivilegeCount := 1;
 Priv.Privileges[0].Luid := LUID;
 Priv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
 Result := AdjustTokenPrivileges(AccessToken, false, Priv,
   SizeOf(TTokenPrivileges), nil, ReturnLen);
end;


> А также, каким образом запустить процесс/изменить параметры
> запущенного чтобы он выполнялся с правами конкретного пользователя
> (чаще всего, администратора)?


Запустить через Runas.
Изменить параметры запущенного - Windows вообще-то не дураки писали.



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

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

Наверх




Память: 0.47 MB
Время: 0.054 c
11-1110529724
Vladimyr
2005-03-11 11:28
2005.11.06
Чёртов Service


3-1127598752
quadronik
2005-09-25 01:52
2005.11.06
Одна форма для всех таблиц


2-1128957774
Tonich
2005-10-10 19:22
2005.11.06
IdFTPServer


4-1125120110
ndn
2005-08-27 09:21
2005.11.06
Принтер замедляет печать


14-1129360380
Колян
2005-10-15 11:13
2005.11.06
Нужно написать серверную программу