Что такое частично доверяемый блок/приложение/код/и т.д. в.NET?

20
задан dbc 14 April 2018 в 20:55
поделиться

3 ответа

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

А частично-доверительный блок средства, которые код выполняет в меньше, чем полном доверии. Платформа.NET имеет, несколько предопределили доверительные уровни , что можно использовать непосредственно или настроить для встречи определенных требований к защите. Например, можно препятствовать тому, чтобы блок получил доступ к базам данных SQL путем отклонения SQLClientPermission.

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

11
ответ дан 30 November 2019 в 00:48
поделиться

. СЕТЬ реализует модель обеспечения безопасности, названную безопасность доступа к коду . Неуправляемый код работает с полномочиями и правами пользователя, запускающего приложение, даже если код, оказывается, происходит из злых источников.

Управляемый код должен обеспечить доказательство из его источника; существуют различные способы сделать это (например, код подписывается с определенным ключом, код был загружен с определенного URL, жизней кода в определенном каталоге на диске, и т.д.). На основе того доказательства блоки помещаются в группы, для которых применяются политики. Политика может дать определенные разрешения группе кода, прежде всего, относительно доступа к системным ресурсам (выполняющий поиск DNS, открыв сетевые соединения, получив доступ "к изолированному устройству хранения данных", получив доступ к локальной файловой системе (все это или просто выбранные каталоги), получив доступ к реестру, получив доступ к сетевым ресурсам, и т.д.). Существует инструмент в панели управления, которая позволяет Вам определять такие политики.

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

Как особый случай, можно присвоить "Полное Доверие" к блоку, дав все разрешения. В то время как я не услышал термин "частичное доверие" прежде, я предположил бы, что это относится к блокам, кто имеет некоторые права, но не Полное Доверие.

поймите, что это - просто обзор - существует намного больше, чтобы быть сказанным о безопасности доступа к коду.

16
ответ дан 30 November 2019 в 00:48
поделиться

Возможно, некоторый контекст поможет.

Думают о чем-то как просмотр stackoverflow. Существует код от самого браузера, который может сделать что-либо на Вашем компьютере (удалите файлы, например) и существует код JavaScript сайта. Код JavaScript не может сделать, что-либо к Вашему компьютеру кроме остроты исчезает эффекты и некоторое другое волшебство дисплея.

.NET имеет способность обеспечить такое различие между локальным приложением и удаленными. Можно записать приложение, которое будет работать на локальном компьютере и сможет сделать что-либо к локальному компьютеру. И это приложение может иметь функцию, которые загружают расширение dll с Интернета. Они расширение смогут сделать вычисление и управлять дисплеем. Но код в них хочет смочь удалить файлы. Поскольку этому не доверяют.

детали являются неправильными, но это - идея (насколько я понимаю это).

0
ответ дан 30 November 2019 в 00:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: