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

Декларативная безопасность

Декларативная безопасность

Можно отказаться, запросить или заявить полномочия, вызывая классы в .NET Framework, но можно также использовать атрибуты и определять требования полномочий декларативно.

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

Допустим, мы объявляем, что метод для выполнения должен иметь полномочие на чтение с C:.

using System;
using System.Security.Permissions;
namespace SecurityApp8 {
 class Class1 {
  static void Main(string[] args) {
   MyClass.Method();
  }
 }
 [FileIOPermission(SecurityAction.Assert, Read="C:")]
 class MyClass {
  public static void Method() {
   // реализация находится здесь
  }
 }
}

Помните, что если атрибуты применяются для заявления или запроса полномочий, невозможно перехватить исключения, возникающие в случае отказа действия, так как не существует обязательного кода, который можно поместить в предложение try-catch-finally.

Чтобы узнать обо всех доступных атрибутах, можно ознакомиться с перечислением System.Security.Permissions.SecurityAction.

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


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