Основные принципы и особенности разграничения доступа в Linux
Зарегистрируйся в два клика и получи неограниченный доступ к материалам,а также промокод на новый заказ в Автор24. Это бесплатно.
Существует три основные модели разграничения доступа [20, с. 658]: дискреционная, мандатная модели и управление доступа на основе ролей. Дискреционная модель реализована в качестве базового механизма контроля доступа, две другие - расширенного. Базовые механизмы делятся на две группы: разграничение прав доступа к файлам и системным вызовам.
В качестве субъектов к которым применяется разграничение доступа являются:
владелец файла (UID);
группа владельцев (GID);
остальные пользователи.
На рисунке 6 приведен примеры редактирования прав доступа к каталогу в операционной системе Linux с использованием графической оболочки KDE. Используемое в операционных системах семейства Linux разграничение доступа к объектам достаточно надежно. Для того чтобы без использования системных команд (вручную) изменить права доступа к объекту для конкретного пользователя, необходимо иметь доступ к области индексов файловой системы, которые определены в специальном файле. Но индекс этого файла также хранится в области индексов. Поэтому, если не изменять права доступа ко всем системным объектам, которые заданы по умолчанию при установке операционной системы (что может сделать только суперпользователь), то можно гарантировать безопасность работы подсистемы разграничения доступа.
Рис. 6 Редактирование прав доступа к каталогу
Для всех субъектов определены три операции, совершаемые над файлами (рисунок 7):
чтение (R – Read);
запись (W – Write);
исполнение (X – eXecutable).
Рис. 7 Базовые права доступа в Linux
У каждого файла имеется ярлык, в котором зафиксированы права доступа к нему
Зарегистрируйся, чтобы продолжить изучение работы
. Права доступа включают список из девяти пунктов: по три вида доступа для трех групп - пользователя-владельца, группы-владельца и 36 остальных. Каждый пункт в этом списке может быть либо разрешён, либо запрещён. Таким образом, для хранения этой информации о правах доступа достаточно 9 бит.
При обращении процесса к файлу (с запросом доступа определённого вида, то есть на чтение, запись или исполнение) система проверяет совпадение идентификаторов владельцев процесса и владельцев файла в определённом порядке, и в зависимости от результата применяет ту или иную группу прав.
Из вышесказанного следует, что доступ к файлу определяется по девяти атрибутам. Разграничение доступа к системным вызовам построено на разделение все субъектов на две категории:
привилегированные;
непривилегированные.
К первой группе относиться только «суперпользователь». Он имеет неограниченный доступ ко всем системным вызовам. Важно отметить, что некоторые системные вызовы, могут быть использованы только привилегированными пользователями.
В качестве примера привилегированных операций, можно привести [20, с. 658]:
подключение и отключение раздела диска;
изменение корневого каталога процесса;
создание файлов устройств.
Следовательно, защита на уровне системных вызовов, осуществляется посредством того являться ли пользователь привилегированным или непривилегированным. Если он непривилегированный, то ему доступен ограниченный список системных вызовов, вызов которых не приведет к нарушениям работы системы.
Реализованная в Linux модель разграничения доступа дискретна - права доступа субъектов (пользователей, процессов) к объектам (файлам, каталогам и т
50% курсовой работы недоступно для прочтения
Закажи написание курсовой работы по выбранной теме всего за пару кликов. Персональная работа в кратчайшее время!