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

Вниз

LogonUser   Найти похожие ветки 

 
Dennis I. Komarov ©   (2011-11-01 11:00) [0]

Кто-нить пользовал?


 
Dennis I. Komarov ©   (2011-11-01 11:33) [1]

AV:

if LogonUser(PWideChar("admin"), PWideChar("."), PWideChar("pass"), LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, hToken) then
...


Где собака?


 
Rouse_ ©   (2011-11-01 11:39) [2]

Да вродь не должно быть, оть регистрация в домене:

procedure TfrmDomainInfo.FormCreate(Sender: TObject);
var
 hToken, hDuplicateToken, hThread: THandle;
begin
 if LogonUser("rouse", "grandsmeta.ru", "123", LOGON32_LOGON_INTERACTIVE,
   LOGON32_PROVIDER_DEFAULT, hToken) then
 try
   DuplicateToken(hToken, SecurityImpersonation, @hDuplicateToken);
   hThread := GetCurrentThread;
   SetThreadToken(@hThread, hDuplicateToken);
 finally
   CloseHandle(hToken);
 end;
...


 
Dennis I. Komarov ©   (2011-11-01 11:52) [3]

Убрал приведение PWideChar - полетело...


 
Dennis I. Komarov ©   (2011-11-01 12:26) [4]

Можно после вызывать CreateProcessAsUser админской требухой? Чегой-то после меня посылает "Клиент не обладает требуемыми правами" хотя "admin" - Администратор. Софт из под простого юзверя...


 
Rouse_ ©   (2011-11-01 12:34) [5]

Можно


 
Dennis I. Komarov ©   (2011-11-01 13:13) [6]

О гуру MSDN-а :) Каким бубном надо трясти, ибо нашел такое:

Согласно MSDN, чтобы исполнить приложение от имени чужой учетной записи
следует использовать функции LogonUser() и CreateProcessAsUser().
LogonUser() требует в качестве параметров логин и пароль учетной записи,
в правах которой мы нуждаемся. Задачей LogonUser() является установка
прав доступа SE_ASSIGNPRIMARYTOKEN_NAME и SE_INCREASE_QUOTA_NAME для
дескриптора маркера пользователя. Эти права нам необходимы чтобы
использовать функцию CreateProcessAsUser(). Такими правами обладают
исключительно системные процессы, поэтому даже учетная запись
"Administrator", не может успешно выполнить CreateProcessAsUser().
Следовательно чтобы мы смогли исполнить приложение (например cmd.exe) с
правами системы, нам уже надо их иметь. Но поскольку нам не извесны
логин и пароль привилегиированного пользователя, то требуется найти иное
решение.


 
Rouse_ ©   (2011-11-01 13:41) [7]

Я запускал из сервиса и проблем небыло, но раз ты хочешь тоже получить такие права системной учетки то делай по шагам:
1. в DPR проекта пишешь небольшую реализацию сервиса.
2. при старте проверяешь, есть ли требуемые права
3. если прав нет, регистрируешь самого себя как сервис запускаешь его а сам закрываешся
4. сервис запускает самого себя как приложение, завершается и снимает себя с регистрации

на выходе имеешь процесс работающий из под системной учетки.


 
Rouse_ ©   (2011-11-01 13:45) [8]

Но для начала попробуй выполнить код из под админа (правой мышки на эксзешнике и там Run As Administrator), я просто не эксперементировал, но вполне возможно что тут про элевацию гворится...


 
Dennis I. Komarov ©   (2011-11-01 13:53) [9]


> 2. при старте проверяешь, есть ли требуемые права

нету

> 3. если прав нет, регистрируешь самого себя как сервис запускаешь
> его а сам закрываешся

На это у меня прав и не хватает...

Суть такая: есть сеть закрытая от и-нета (без домена)... В ней много хрюшных машин, которые давно не обновлялись. Наше правительство перенесло default-city и прилегающие волости на ПМЖ в +4 UTF. Есть KB-шка для решения этой проблемы. Надо запустить под админом...


 
Dennis I. Komarov ©   (2011-11-01 13:54) [10]


> Но для начала попробуй выполнить код из под админа (правой
> мышки на эксзешнике и там Run As Administrator), я просто
> не эксперементировал, но вполне возможно что тут про элевацию
> гворится...

RunAs запускает все без проблем...


 
Rouse_ ©   (2011-11-01 14:25) [11]


> RunAs запускает все без проблем...

Ну так и не парься, манифест прикрути и всего недолга...


 
Dennis I. Komarov ©   (2011-11-01 15:17) [12]

это как? линк плз


 
Dennis I. Komarov ©   (2011-11-01 15:33) [13]


> Ну так и не парься, манифест прикрути и всего недолга...

Сдается мне, ты о новом 7-ом веке, машины с хрюшками...


 
Rouse_ ©   (2011-11-01 15:43) [14]


> Dennis I. Komarov ©   (01.11.11 15:17) [12]
>
> это как? линк плз

это который asInvoker заменяет



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

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

Наверх




Память: 0.5 MB
Время: 0.008 c
3-1272018364
снежок
2010-04-23 14:26
2012.02.12
Помогите с решением запроса


2-1320299456
igorium
2011-11-03 08:50
2012.02.12
Пропорциональное изменение размера шрифта


4-1254377124
Apachi
2009-10-01 10:05
2012.02.12
Узнать сколько места на диске занимает файл


2-1318479725
Pcrepair
2011-10-13 08:22
2012.02.12
Паук(spider) для обработки ХТМЛ-страниц. TWebbrowser или INDY?


3-1271682009
Виктор
2010-04-19 17:00
2012.02.12
Fast Reports 4.6