Member 14490792 Ответов: 0

Как я могу создать процесс под зарегистрированной учетной записью пользователя через службу окон?


Hi,
I don't have any experience in WINAPI. I'm using visual c++ to create a service. I have a service which creates a process(notepad.exe) under the SYSTEM account. This service has to launch the process under the user account(currently logged on user account). 


Что я уже пробовал:

1.Get the process_id of a process(OneDrive.exe or explorer.exe) which is ran by a logged on user.

2.Use processHandle = OpenProcess(PROCESS_ALL_ACCESS,TRUE,process_id) function to get the handle to the process.

3.Use OpenProcessToken(processHandle , TOKEN_QUERY | TOKEN_IMPERSONATE | TOKEN_DUPLICATE, hToken) to get a user token.(I can get the token, but I don't know whether this token is valid or not!)

4.Then use ImpersonateLoggedOnUser(hToken) function to create the process under the user account.(this step always fails in my case)

Can anyone please help me to get out from this issue...??

CHill60

"этот шаг всегда терпит неудачу в моем случае" - молча или вы получаете сообщение об ошибке в журнале событий?
Кроме того - есть ли в этой статье какая-либо польза [Безопасность] - Олицетворение Пользователя[^]

Member 14490792

Спасибо, чувак...

0 Ответов