Означает ли полное доверие то же самое, что и "Запуск от имени администратора"

Значит ли полное доверие то же самое, что и "Запуск от имени администратора"? Я прочитал все, заявив, что "для этого, приложение должно быть полноправным приложением". Это то же самое, что вы должны иметь права администратора для запуска приложения? Если нет, какая разница? Как вы можете определить, является ли приложение "полным доверием"?

Мне сказали, что "Администратор или нет. Приложения .NET не будут делать определенные вещи, если они не работают из" надежного "местоположения". Что такое "доверенное место"? Если вы запускаете приложение из "доверенного местоположения", можете ли вы делать то, что "требует полного доверия", не будучи администратором?

Ответ 1

Нет. Полное доверие - это термин .NET, используемый для указания того, что он не работает в песочнице с ограниченными правами. В .NET до 3.5 SP1 это включало запуск из общего сетевого ресурса (в конфигурации по умолчанию). Он также включает запуск в качестве приложения ClickOnce, не запрашивающего дополнительных разрешений, или в некоторых других песочницах на основе браузера.

Полное доверие означает, что он может делать все, что он запускает, как может, но не работает как администратор.

Ответ 2

Нет. Начиная с версии 2.0, инфраструктура .Net имеет собственную небольшую файловую систему для обеспечения безопасности. Администратор или нет. Приложения .NET не будут делать определенные вещи, если они не работают из "надежного" местоположения.

Достаточно доверяют что-либо на вашем локальном жестком диске, но (и, предположительно, они исправили это для 3.5sp1), даже локальной интрасети не доверяют, поэтому большинство приложений на рабочем столе .Net не смогут даже начать, если они сидят сетевой диск или общий ресурс.

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

С точки зрения ASP.Net это также означает, что определенные действия требуют больше "доверия", чем другие. Например, отправка электронной почты может привести к исключениям, если они не настроены правильно.

Ответ 3

В основном полное доверие означает, что код С# имеет полный контроль над текущим (. Net) процессом и всеми процессами, запущенными в учетной записи пула приложений.

Это то же самое, что работать с dll С++

Доступ администратора будет зависеть от настроек IIS (т.е. если вы запустите веб-сайт под Системой или учетной записью администратора)