Написание безопасных библиотек классов

Обновлен: Ноябрь 2007

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

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

Элемент безопасности

Описание

Требование безопасности

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

Переопределения безопасности

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

e942ksxt.alert_caution(ru-ru,VS.90).gifВнимание!
Переопределения могут быть небезопасны, и при их использовании следует соблюдать осторожность.

Оптимизация безопасности

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

См. также

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

Требования безопасности

Переопределение результатов проверки безопасности

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

Оптимизация безопасности

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

Управление доступом для кода