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

Службы / процессы, запущенные на сеанс RDS

У меня есть коробка под управлением Server 2008 R2 с RDS. В настоящее время в этой системе запущено 45 сеансов RDS, и в большинстве из них работают идентичные приложения.

Теперь мы хотим добавить еще 30 систем, которые будут использовать RDS, но будут запускать другие программы.

Мой вопрос: как лучше всего предотвратить запуск служб, связанных с этими программами, во всех других сеансах RDS при их запуске? Я не хочу, чтобы программа загружалась на панель задач или запускала процесс в фоновом режиме на каждом терминале, если он будет использоваться только на 4 или 5 терминалах.

Если программа запускается при входе в систему, она должна быть запущена некоторыми настраиваемыми средствами. Использовать autoruns или аналогичный для идентификации механизма запуска.

После идентификации удалите все глобальные настройки и используйте групповую политику, чтобы автозапуск применялся только к тем пользователям, у которых есть доступ к программе.

Пример:

Удалите автозапуск HKLM для всех пользователей

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
SomeAutoStart=C:\Program Files\foo\bar.exe

И замените его групповой политикой, которая создает его в

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
SomeAutoStart=C:\Program Files\foo\bar.exe

Примечание: Я немного соврал, когда сказал, что "должно быть [...] настраиваемым". Есть как минимум один способ, не имеющий конфигурации. Это любимый драйвер принтера, который использует процесс, выполняемый с SeTcbPrivilege для запуска процесса в пользовательской сессии. Но обычно мое утверждение верно.