Альтернативные разрешения для StartInfo - PullRequest
5 голосов
/ 07 февраля 2011

У меня есть служба (обычно запускаемая как NetworkService), которая получает информацию о процессе с помощью StartInfo. Работает нормально.

Но клиент хочет запустить службу как пользователь с ограниченными правами. (разумный запрос)

Согласно MS docs StartInfo может использоваться только «полностью доверенным» пользователем. Есть ли альтернативный способ получить большую часть информации из StartInfo, не будучи «полностью доверенным» или настроить пользователя с ограниченным доступом, который является «полностью доверенным» в отношении информации о процессе?

Ответы [ 2 ]

2 голосов
/ 07 февраля 2011

Похоже, вы путаете две ортогональные системы безопасности: безопасность пользователей Windows и безопасность доступа к коду .NET (CAS). Хотя использование класса System.Diagnostics.Process требует полного доверия CAS, для него не требуются разрешения пользователя-администратора, и вполне возможно, чтобы пользователь без прав администратора или с ограниченным доступом запускал полностью доверенное приложение (wr CAS).

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

0 голосов
/ 07 февраля 2011

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

Используйте Инструмент политики безопасности доступа к коду , чтобы назначить полное доверие

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...