Главная страница
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.045 c
14-1129151578
Gero
2005-10-13 01:12
2005.11.06
Выбор группы в InnoSetup


2-1129266306
Arkady
2005-10-14 09:05
2005.11.06
Вычисляемое поле


2-1129451040
_WWW
2005-10-16 12:24
2005.11.06
WebNavigator


14-1129126547
Anatoly Podgoretsky
2005-10-12 18:15
2005.11.06
Тестирование DSL


3-1127598704
Prohodil Mimo
2005-09-25 01:51
2005.11.06
почему после Bacup Restore пропадают Not Null ?