При выполнении этого примера должна
При выполнении этого примера должна получиться примерно следующая выдача:
Evidence Enumerator has 4 members System. Security.Policy.Zone
MyComputer System.Security.Policy.Url
file:///C:/01/NetCpp/Chapl3/Evidence/Debug/Evidence.exe System.Security.Policy.StrongName
StrongName of Assembly is: Evidence version: 1.0.685.28667
Assembly public key: 0024000004800...
...EA897BA System.Security.Policy.Hash
MD5 Hash of Assembly:
41601023422625513614244127248522225222668
SHA1 Hash of Assembly:
216132245725424821. . .
Пере вод такой:
Перечисление Evidence имеет 4 члена Система. Защита. Политика. Зона
MyComputer Система. Защита. Политика. Url
file:///С:/OI/NetCpp/Chapl3/Evidence/Debug/Evidence.exe
Система. Защита. Политика.
StrongName
StrongName сборки:
версия Evidence: 1.0.685.28667
Открытый ключ сборки: 0024000004800...
... ЕА897ВА Система.
Защита.
Политика.
Хэш-код
MD5 Хэш-код сборки:
41601023422625513614244127248522225222668
SHA1 Хэш-код сборки:
216132245725424821...
Для этой сборки подтверждением, относящимся к Zone (Зона), является MyComputer. Подтверждение Url — это местоположение сборки на диске. Что касается подтверждения Hash, то оно может дать нам хэш-коды сборки, а именно MD5 и SHA1. Подтверждение StrongName дает нам информацию об уникальном имени сборки, полученном из атрибута AssemblyKeyFileAttribute("KeyPair.snk") в исходном файле Assemblylnfo.cpp.
Кое-что из этого подтверждения можно преобразовать в соответствующие разрешения для личности. Например, у класса Zone (Зона) имеется метод Createldenti-tyPermission. Он возвращает интерфейс iPermission, который представляет, в свою очередь, экземпляр ZoneldentityPermission, связанный с этой частью подтверждения. Похожие методы имеются у классов Url (унифицированный указатель информационного ресурса) и StrongName.
Другой способ просмотра разрешений для личности — это получить ответы на рад вопросов.
Кто опубликовал (подписал) этот код?
Какое имя сборки?
Из какого Web-узла или унифицированного указателя информационного ресурса (URL) она была загружена?Из какой зоны получен код?
Создатель прикладной области (хоста) может также предоставить подтверждение, передавая его коллекции Evidence (Подтверждение) при вызове метода ExecuteAssembly. Конечно, у такого кода должно быть разрешение ControlEvidence. Общеязыковой среде выполнения CLR также доверено добавлять подтверждение, ведь, кроме всего прочего, именно она проводит политику безопасности. Подтверждение можно расширять: вы можете определять свои типы подтверждений и использовать их в политике безопасности.
CompEbook.ru Железо, дизайн, обучение и другие
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий