| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Запуск программы с повышенными правами |
| Автор: Artemon 30.8.2011, 10:02 |
| Необходимо запустить из Windows службы exe файл с системными правами (например чтобы был доступ на запись в каталог Windows), но при этом чтобы пользователь, от имени которого происходит запуск - не менялся. Другими словами создать процесс от имени обычного пользователя, но при этом наделить его особыми правами. Моя гипотеза: получить токен пользователя, от имени которого запушена служба, из токена вытащить часть прав, и запустить exe от имени другого пользователя. Но как это будет на практике - не понятно. У кого-нибудь есть мысли ? |
| Автор: xvr 30.8.2011, 11:55 |
| Ну например можно попробовать CreateProcessAsUser с флагом CREATE_PRESERVE_CODE_AUTHZ_LEVEL |
| Автор: Artemon 30.8.2011, 14:12 |
| Не катит, видимо на доступ к директориям права как-то особо задавать надо |
| Автор: spyswamp 31.8.2011, 09:54 |
| Artemon, а SECURITY_ATTRIBUTES ты как настраиваешь? Добавлено через 1 минуту и 6 секунд И делал ли перед созданием процесса от пользователя LogonUserW от этого пользователя? |
| Автор: 500mhz 2.9.2011, 16:56 | ||
это на какой венде? |
| Автор: Artemon 4.9.2011, 17:53 |
Windows XP, Windows Vista, Windows 7 |