У меня есть служба Windows, работающая как LocalSystem, которая должна получить доступ к некоторым сетевым ресурсам. Я нашел способ выдать себя за пользователя, который в данный момент вошел в систему, получив токен с OpenProcessToken
, продублировав его и вызвав WindowsIdentity.Impersonate
. Таким образом, я могу получить доступ к тем же сетевым ресурсам, что и олицетворенный пользователь.
Однако это означает, что моя служба будет работать только при наличии зарегистрированного пользователя ... Поэтому я подумал, что, поскольку LocalSystem имеет все привилегии на компьютере, возможно, он может выдать себя за пользователя, который в данный момент не вошел ? Или войти в систему как любой (локальный) пользователь, не зная его пароль? Предполагая, что это возможно, как я могу это сделать?
Заранее спасибо за любую помощь