Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Организация контроля доступа в Windows NT






Система управления доступа в Win NT отличается высокой степенью гибкости, которая достигается за счет большого разнообразия субъектов и объектов доступа, а также детализаций операций доступа.

Для разделяемых ресурсов в Win NT применяется общая модель объекта, которая содержит такие характеристики безопасности, как набор допустимых операций, ID-р владельца, список управления доступом.

Объекты в Win NT создаются для любых ресурсов в том случае, когда они являются разделяемыми. Характеристики объектов делятся на 2 части – общую часть, состав которой не зависит от типа объекта, и индивидуальную, определяемую типом объекта. Все объекты хранятся в иерархических древовидных структурах, элементами которых являются объекты ветви (каталоги) и объекты листья (файлы).

Проверка прав доступа для объектов любого типа выполняется централизованно с помощью монитора безопасности, работающего в привилегированном режиме Security Reference Monitor.

В системе безопасности Win NT существует большое количество различных предопределенных субъектов доступа как отдельных пользователей, так и группы. Смысл встроенных пользователей и групп состоит в том, что они по умолчанию наделены некоторыми правами, что облегчает администратору работу по созданию эффективной системы разграничения доступа.

Win NT поддерживает 3 класса операций доступа, которые отличаются типом субъектов и объектов, участвующих в этих операциях:

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

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

3. возможности пользователей, определяются для отдельных пользователей на выполнение действий, связанных с формированием их информационной среды, например: применение состава главного меню программы или возможность пользоваться пунктом меню выполнить… и т.д.

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

Права и разрешения, данные группе, автоматически предоставляются всем членам группы.

Проверка разрешения доступа процесса к объекту производится в соответствии с общей схемой доступа.

При входе пользователя в систему для него создается токен доступа (access token), включающий ID пользователя и ID всех групп, в которые входит пользователь. В токене также имеются список управления доступом (ACL), который состоит из разрешений и применяется к создаваемым процессам, объектам, а так же список прав пользователя на выполнение системных действий.

Все объекты, включая файлы, потоки, события, и даже токены доступа, когда создаются снабжаются дескриптором безопасности.

Владелец объекта, который его создал, обладает правом избирательного управления доступом к объекту и может изменять ACL объекта, чтобы позволить им не позволить другим осуществить доступ к объекту.

Встроенный администратор Win NT в отличие от суперпользователя UNIX может не иметь некоторых разрешений на доступ к объекту. Для реализации этой возможности ID-ры администратора и группы админов могут входить в ACL как и ID-ры рядовых пользователей. Но админ имеет возможность выполнить любые операции с любыми объектами, так как он всегда может стать владельцем объекта, а затем уже как владелец получить полный набор разрешений. Однако вернуть владение предыдущему владельцу объекта админ не может.

При запросе процесса некоторой операции доступа к объекту управление всегда передается монитору безопасности для сравнения ID-ров пользователя и групп из токена доступа с ID-рами в элементах ACL объекта. В отличие от UNIX в элементах ACL могут существовать как списки разрешенных, так и списки запрещенных для пользователя оперций.

В Win NT однозначно определены правила, по которым вновь создаваемому объекту назначается список ACL. Если вызывающий код во время создания объекта явно задает все права доступа вновь создаваемому объекту, то система безопасности приписывает этот ACL объекту. Если же вызывающий код не снабжает объект списком ACL, а объект имеет имя, то применяется принцип наследования разрешения. Но если при этом объект не имеет наследуемых элементов ACL, используется список ACL по умолчанию из токена доступа процесса.

28. Архитектура ОС. Классическая архитектура. Многослойная структура ядра.

 

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

Большинство современных ОС представляют собой хорошо структурированные модульные системы, способные к развитию, расширению и переносу на новые платформы. Какой – либо единой ОС не существует, но существуют универсальные подходы к структурированию ОС. Наиболее общим подходом к структуризации ОС является разделение всех ее модулей на 2 группы:

1. Ядро, содержащее модули, которые выполняют основные функции ОС

2. Модули, выполняющие вспомогательные функции ОС

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

Остальные модули ОС являются вспомогательными, то есть выполняют менее обязательные функции. Вспомогательные модули ОС оформляются либо в виде приложений, либо в виде библиотеки процедур.

Вспомогательные модули обычно подразделяются на следующие группы:

ü Утилиты – программы, решающие отдельные задачи управление сопровождения компьютерной системы

ü Системные обрабатывающие программы – текстовые и графические редакторы, компиляторы, компоновщики, отладчики.

ü Программы предоставления пользователю дополнительных услуг.

ü Библиотеки процедур различного назначения, упрощающие разработку приложений.

Разделение ОС на ядро и модули приложения обеспечивает легкую расширяемость ОС. Чтобы добавить новую высокоуровневую функцию, достаточно разработать новое приложение без модификации функции ядра системы. Внесение изменений в функции ядра может оказаться достаточно сложной, и сложность зависит от структурной организации самого ядра.

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

Обеспечить привилегии ОС невозможно без специальных средств аппаратной поддержки. Аппаратура компьютера должна поддерживать как минимум 2 режима работы – пользовательский и привилегированный (режим ядра) режим. Приложения ставятся в подчиненное положение, за счет запрета выполнения в пользовательском режиме некоторых критичных команд, связанных с переключением процессора с задачи на задачу, управлением устройствами ввода – вывода, доступом к механизму распределения и защитам памяти. Выполнение некоторых инструкций процессора в пользовательском режиме запрещается безусловно, тогда как другие инструкции запрещается выполнять только при определенных условиях. Условия разрешения выполнения критичных инструкций находятся под полным контролем ОС и этот контроль обеспечивается за счет набора инструкций, безусловно запрещенных для пользовательского режима.

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

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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.