Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Контроль доступа к файлам



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

Во всех этих случаях действует общая схема: пользователи пытаются выполнить с разделяемым ресурсом определенные операции, а ОС должна решать, имеют ли пользователи на это право. Пользователи являются субъектами доступа, а разделяемые ресурсы — объектами. Пользователь осуществляет доступ к объектам операционной системы не непосредственно, а с помощью прикладных процессов, которые запускаются от его имени. Для каждого типа объектов существует набор операций, которые с ними можно выполнять. Например, для файлов это операции чтения, записи, удаления, выполнения; для принтера — перезапуск, очистка очереди документов, приостановка печати документа и т. д. Система контроля доступа ОС должна предоставлять средства для задания прав пользователей по отношению к объектам дифференцированно по операциям, например, пользователю может быть разрешена операция чтения и выполнения файла, а операция удаления — запрещена.

Во многих операционных системах реализованы механизмы, которые позволяют управлять доступом к объектам различного типа с единых позиций. Так, представление устройств ввода-вывода в виде специальных файлов в операционных системах UNIX является примером такого подхода: в этом случае при доступе к устройствам используются те же атрибуты безопасности и алгоритмы, что и при доступе к обычным файлам и каталогам. Еще дальше продвинулась в этом направлении операционная система Windows NT. В ней используется унифицированная структура — объект безопасности, — которая создается не только для файлов и внешних устройств, но и для любых разделяемых ресурсов: секций. Это позволяет использовать в Windows NT для контроля доступа к ресурсам любого вида общий модуль ядра — менеджер безопасности.

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

У каждого объекта доступа существует владелец. Владельцем может быть как отдельный пользователь, так и группа пользователей. Владелец объекта имеет право выполнять с ним любые допустимые для данного объекта операции. Во многих операционных системах существует особый пользователь (superuser, root, administrator), который имеет все права по отношению к любым объектам системы, не обязательно являясь их владельцем. Под таким именем работает администратор системы, которому необходим полный доступ ко всем файлам и устройствам для управления политикой доступа.

Различают два основных подхода к определению прав доступа.

q Избирательный доступ имеет место, когда для каждого объекта сам владелец может определить допустимые операции с объектами. Этот подход называется также произвольным (от discretionary — предоставленный на собственное усмотрение) доступом, так как позволяет администратору и владельцам объектов определить права доступа произвольным образом, по их желанию. Между пользователями и группами пользователей в системах с избирательным доступом нет жестких иерархических взаимоотношений, то есть взаимоотношений, которые определены по умолчанию и которые нельзя изменить. Исключение делается только для администратора, по умолчанию наделяемого всеми правами.

q Мандатный доступ (от mandatory — обязательный, принудительный) — это такой подход к определению прав доступа, при котором система наделяет пользователя определенными правами по отношению к каждому разделяемому ресурсу (в данном случае файлу) в зависимости от того, к какой группе пользователь отнесен. От имени системы выступает администратор, а владельцы объектов лишены возможности управлять доступом к ним по своему усмотрению. Все группы пользователей в такой системе образуют строгую иерархию, причем каждая группа пользуется всеми правами группы более низкого уровня иерархии, к которым добавляются права данного уровня. Членам какой-либо группы не разрешается предоставлять свои права членам групп более низких уровней иерархии. Мандатный способ доступа близок к схемам, применяемым для доступа к секретным документам: пользователь может входить в одну из групп, отличающихся правом на доступ к документам с соответствующим грифом секретности, например «для служебного пользования», «секретно», «совершенно секретно» и «государственная тайна». При этом пользователи группы «совершенно секретно» имеют право работать с документами «секретно» и «для служебного пользования», так как эти виды доступа разрешены для более низких в иерархии групп. Однако сами пользователи не распоряжаются правами доступа — этой возможностью наделен только особый чиновник учреждения.

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

Выводы

q Основными задачами подсистемы ввода-вывода являются:

o организация параллельной работы процессора и устройств ввода-вывода при обеспечении приемлемого уровня реакции каждого драйвера и минимизации общей загрузки процессора;

o согласование скоростей работы процессора, оперативной памяти и устройств ввода-вывода;

o разделение устройств ввода-вывода между процессами;

o обеспечение удобного логического интерфейса к устройствам ввода-вывода.

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

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

q Для координации работы драйверов в подсистеме ввода-вывода может выделяться особый модуль, называемый менеджером ввода-вывода.

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

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

q Кроме обычных файлов ОС, как правило, поддерживает такие типы файлов, как каталоги и специальные файлы.

q Специальный файл является универсальной моделью устройства ввода-вывода, представляя его для остальной части операционной системы и прикладных процессов в виде неструктурированного набора байт, то есть в виде обычного файла.

q Современные файловые системы имеют иерархическую структуру, упрощающую именование файлов и их поиск.

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

q Механизм контроля доступа к файлам позволяет администраторам многопользовательских ОС задавать для отдельных пользователей и групп пользователей набор операций, которые им разрешается выполнять над отдельным файлом или группой файлов, объединенных в каталог.

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

Вопросы для самоконтроля

1. За счет каких устройств удается распараллелить ввод-вывод даже в однопроцессорных системах?

2. Какие функции выполняет менеджер ввода-вывода?

3. Какие два типа ресурсов, связанных с диском, требуется выделить процессу, чтобы он выполнил запись данных на диск?

4. Каким из двух типов драйверов — блок-ориентированным или байт-ориентированным — обслуживается диск?

5. С какой целью в некоторых файловых системах характеристики файла отделяются от его имени?

6. Какие программные компоненты поддерживают структуру файла в тех ОС, где файл представлен последовательностью байт?

7. С какого каталога начинается «раскрутка» полного имени файла?

8. Операционная система выделяет файлам пространство на диске:

А) секторами;

В) дорожками;

С) кластерами;

D) цилиндрами.

9. При каких условиях можно автоматически гарантированно восстановить в файловой системе FAT удаленный файл?

10. Сформулируйте основную цель введения в ОС системного вызова open.

11. В какой из типов систем управления доступом — избирательной или мандатной — пользователю предоставляется большая свобода действий?

12. Что означает термин «spooling» и что означает термин «swapping»?

13. Что такое синхронный и асинхронный ввод/вывод?

14. Расскажите о кэшировании операций ввода/вывода при работе с накопителями на магнитных дисках.

15. Что такое «файловая система»?

16. Что обеспечивает использование той или иной файловой системы?

17. Какие файловые системы, используемые в ОС для ПК, вы знаете?

18. Опишите структуру магнитного диска (разбиение дисков на разделы).

19. Сколько (и каких) разделов может быть на магнитном диске?

20. Объясните общие принципы файловой системы FAT.

21. Что такое кластер, от чего зависит его размер?

22. Сравните файловые системы FAT16 и FAT32. В чем заключаются их достоинства и недостатки?

23. Что означает «журналирование» файловых операций? Что это дает?





Дата публикования: 2015-01-23; Прочитано: 4022 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...