Расчет допустимого набора разрешений

Важное примечаниеВажно

В версии .NET Framework 4 среда CLR больше не определяет политику безопасности для компьютеров.Корпорация Майкрософт рекомендует использовать вместо политики безопасности среды CLR политики ограниченного использования программ Windows.Сведения этого раздела относятся к .NET Framework 3.5 и более ранним версиям; они неприменимы к версии 4 и выше.Дополнительные сведения об этом и других изменениях см. в разделе Изменения системы безопасности в платформе .NET Framework 4.

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

Среда выполнения использует следующий процесс для расчета набора допустимых разрешений.

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

    Поиск соответствия начинается с вершины иерархии групп кода в группе всех кодов. Среда выполнения выполняет поиск на уровнях иерархии, включая дочерние группы, если в какой-либо родительской группе найдено соответствие.

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

    Если к группе кода применяется атрибут Exclusive или LevelFinal, среда выполнения иначе рассчитывает набор допустимых разрешений. Дополнительные сведения см. в разделе Атрибуты группы кода.

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

В следующем примере показана иерархия групп кода, где Microsoft® Money является членом четырех групп кода: "Весь код", "Издатель: Microsoft", "Зона: локальная интрасеть" и "Имя: Microsoft Money". Набор допустимых разрешений для данного уровня политики (компьютер, пользователь или домен приложения) является сочетанием (объединением) именованных наборов разрешений, связанных с каждой из этих групп кода.

Иерархия групп кода

Иерархия групп кода

См. также

Основные понятия

Атрибуты группы кода

Другие ресурсы

Управление политикой безопасности