Как процессу во время выполнения получить привилегии какого-либо пользователя?
Written on .
//Q: Как процессу во время выполнения получить привилегии //какого-либо пользователя?
//A: Надо переопределить контекст процесса
HANDLE hToken, hThread; //Получаем новый контекст if(LogonUser("uname", "domain", "upass", LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, &hToken)) { //Переопределяем контекст процесса ImpersonateLoggedOnUser(hToken); } //Делаем то, что надо от имени этого пользователя RevertToSelf();//Возвращаем процессу прежний контекст CloseHandle(hToken);//Освобождаем дескриптор контекста