Создание Windows-приложений на основе Visual C#



Использование безопасности доступа кода - часть 2


В лекции 2 мы работали с проектом BinaryReadWrite. Скопируйте всю папку проекта и переименуйте ее в Permissions. Снова поместите в папку bin\Debug какой-нибудь файл формата MP3 и назовите его music.mp3. Запустите проект и убедитесь в том, что в этой же папке появился записанный файл newmusic.mp3. Теперь добавляем пространство имен System.Security и соответствующий блок исключений:

Листинг 10.1.

(html, txt)

В окне Solution Explorer дважды щелкаем на файл AssemblyInfo.cs и для использования атрибутов добавляем пространство имен System.Security.Permissions:

using System.Reflection; using System.Runtime.CompilerServices; using System.Security.Permissions;

В конце листинга AssemblyInfo.cs определяем минимальный набор разрешений:

// Запрос минимального набора разрешений [assembly: UIPermission(SecurityAction.RequestOptional, Window = UIPermissionWindow.SafeTopLevelWindows)] [assembly: PermissionSet(SecurityAction.RequestOptional, Name = "LocalIntranet")]

Это разрешение не было назначено политикой безопасности, поэтому генерируется исключение (рис. 10.5).

Сгенерированное исключение при определении минимального набора разрешений

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

Для получения доступа следует определять другие наборы разрешений и настраивать политику безопасности. Например, данный запрос разрешений указывает, что сборка не нуждается в дополнительных разрешениях:

[assembly:PermissionSet(SecurityAction.RequestOptional, Unrestricted = false)]

На диске, прилагаемом к книге, вы найдете приложение Permissions (Code\Glava10\ Permissions).

on_load_lecture()

Дальше »

  Если Вы заметили ошибку - сообщите нам.  

Страницы:

« |

1

|

2

|

3

|

4

|

5

|

6

|

7

|

8

|

вопросы | »

|

учебники

|

для печати и PDA

Курсы | Учебные программы | Учебники | Новости | Форум | Помощь



Телефон: +7 (495) 253-9312, 253-9313, факс: +7 (495) 253-9310, email: info@intuit.ru

© 2003-2007, INTUIT.ru::Интернет-Университет Информационных Технологий - дистанционное образование




Содержание  Назад  Вперед