CAS, свидетельства, политика и разрешения

Контроль выполнения кода (CAS) позволяет решать, какие действия коду разрешено выполнять, а какие - нет. CAS основывается на том, что вы можете назначить уровень доверия сборкам с кодом и ограничить разрешенные для этого кода операции, основываясь на заданных разрешениях. CAS тесно связан концепцией безопасности, основанной на свидетельствах (evidence). Свидетельство - это набор вспомогательной информации, которую CLR использует для принятия решений о том, к каким группам принадлежит код в сборке и, соответственно, какие действия этому коду разрешены. Свидетельства могут состоять, например, из информации о происхождении кода, из цифровой подписи на коде и так далее.

Политика безопасности - это набор правил, который конфигурируется администратором и используется средой CLR для принятия CAS-реше- ний. Политика безопасности может быть задана на уровне предприятия, машины, пользователя или приложения. Политика безопасности определяется в терминах разрешений. Разрешение - это объект, описывающий права и привилегии сборок, принадлежащих к определенной группе кода, на доступ к определенным ресурсами и на выполнение определенных действий. Собственно говоря, политика просто задает соответствие между свидетельствами и разрешениями.

Сборки могут программно или иным образом затребовать получение определенных разрешений. Политика безопасности определяет, какие разрешения могут быть предоставлены конкретной сборке. Политика безопасности основывается на правилах, которые определяет администратор, а СЫ1 применяет эти правила, проводя соответствующую политику. Свидетельства, представленные идентификатором пользователя и, соответственно, его полномочиями, используются для выбора политики, которая будет применена к конкретной сборке кода. СЫ1 решает на основе свидетельств сборок, какие разрешения им можно предоставить. Свидетельства могут включать в себя собственно идентификацию сборки, идентификацию того, кто ее подписал, ее происхождение (включая, например, 1ШЬ-сайт и зону 1Ы;ете1;). В главе 8 мы изучим все эти темы более подробно.

Итоги главы

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

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >