Назад | Перейти на главную страницу

Минимальный набор прав для запуска процесса на Microsoft Windows Server

я бы хотел запустить процесс (не услуга) под другой пользователь на Microsoft Windows Server, и мне нужен минимальный набор прав которые необходимы для этого.

Требуется минимальный набор прав, поскольку этот пользователь не должен иметь возможность входить в систему и получать доступ только к необходимым ресурсам.

Примерно так должно работать:

Start-Process -Credential $cred -FilePath calc.exe

Я изучил Политику прав пользователей, но без особого успеха.

Ссылаясь на комментарии, я думаю, что пользователю B нужно как минимум право «Входить в систему как пакетное задание». Если процесс, запущенный под учетными данными пользователя B, предназначен для выполнения определенных задач, тогда пользователю B могут потребоваться дополнительные права или привилегии для правильного функционирования этих задач.

В этой статье перечислены права и привилегии, а также подробно описаны случаи, когда право или привилегия могут потребоваться для определенных задач: https://technet.microsoft.com/en-us/library/cc755971(v=ws.10).aspx

Похоже, что вы, возможно, пытаетесь сделать, это разрешить процессу запускаться от имени пользователя B на компьютере, даже если пользователь B не может войти в систему в интерактивном режиме из-за того, что пользователь B имеет право «Запретить вход локально» или не является членом группы с правом «Разрешить локальный вход».

«Вход в систему как пакетное задание» позволит использовать пользователя B для процессов, инициированных планировщиком задач. Возможно, что попытка запустить процесс в интерактивном сеансе (т. Е. Вошел в систему как пользователь A) с пользователем, который имеет только права на пакетное задание и не имеет прав на взаимодействие, завершится ошибкой. В этом случае «Разрешить локальный вход», предоставленное пользователю B, должно разрешить использование пользователя B для процесса. Единственная загвоздка в том, что пользователь Б может войти в систему в интерактивном режиме, что, вероятно, нежелательно.

Обходной путь может заключаться в "банальном планировании" работы. Вместо того, чтобы пользователь A фактически запускал команду, пользователь A устанавливает задание расписания задач, которое затем задает для запуска в течение одной минуты (или чего-то еще).

Вам нужны разрешения на чтение / выполнение для самого файла программы, разрешения на чтение для любых файлов, которые программа должна читать, и разрешения на запись в любом месте, где программе необходимо писать. На самом деле это не так уж и отличается от * nix.