Книга: C# для профессионалов. Том II

Неявное полномочие

Неявное полномочие

Часто, когда предоставлена некоторые полномочия, возникает неявное утверждение, что также даны и другие полномочия. Например, если присвоено полномочие FileIOPermission для C:, то неявно предполагается, что также имеется доступ к его подкаталогам (допущение системы безопасности учетных записей Windows).

Если необходимо проверить, что данное полномочие неявно вносит другое полномочие в качестве подмножества, то можно сделать следующее.

// Пример из SecurityApp5
class Class1 {
 static void Main(string[ ] args) {
  CodeAccessPermission permissionA =
   new FileIOPermission(FileIOPermissionAccess.AllAccess, @"C:");
  CodeAccessPermission permissionB =
   new FileIOPermission(FileIOPermissionAccess.Read, @"C:temp");
  if (permissions.IsSubsetOf(permissionA) {
   Console.WriteLine("PermissionB is a subset of PermissionA");
  } else {
   Console.WriteLine("PermissionB is NOT a subset of PermissionA");
  }
 }
}

Вывод будет выглядеть следующим образом:

PermissionB is a subset of PermissionA

Оглавление книги


Генерация: 4.884. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз