Разрешения коду на доступ
Для доступа к ресурсу, такому,
например, как файл, или для выполнения
определенной операции коду требуются
разрешения Некоторые разрешения даются
каждой сборке политикой безопасности (о
которой еще пойдет речь в этой главе).
Разрешения коду на доступ могут
запрашиваться самим кодом. И тогда, исходя
из политики безопасности для той или иной
сборки, общеязыковая среда выполнения CLR
будет решать, какие разрешения следует
предоставить. О том, как писать
нестандартное разрешение, мы говорить не
будем
Вот некоторые примеры разрешений
коду на доступ:
- DNSPermission управляет доступом к имеющимся в
сети серверам доменных имен;
- EnvironmentPermission управляет доступом на
чтение или запись переменных среды;
- FilelOPermission управляет доступом к файлам и
каталогам;
- FileDialogPermission позволяет читать файлы,
выбранные в диалоговом окне Open (Открыть).
Полезно тогда, когда FilelOPermission не
предоставлено;
- Ref lectionPermission управляет возможностями
получения доступа к метаданным, не
являющимся общедоступными, и
способностью порождать метаданные,
- RegistryPermission управляет возможностью
получать доступ к системному реестру и
изменять его,
- SecurityPermission управляет использованием
подсистемы защиты,
- SocketPermission управляет возможностью
устанавливать соединения или принимать
их по транспортному адресу;
- UlPPermission управляет пользователями
различных средств пользовательского
интерфейса, в том числе и буферами обмена;
- WebPermission управляет возможностью
устанавливать соединения или принимать
их по Web-адресу.
Использование этих разрешений
называется защитой доступа для кода (Code Access
Security), потому что в их основе лежит не
личность пользователя, выполняющего код, а
то, имеет ли сам код право предпринять
некоторое действие.
|