Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
366_Operatsionnye_sistemy_UP_2005.doc
Скачиваний:
105
Добавлен:
03.11.2018
Размер:
1.52 Mб
Скачать

8.6.2. Реализация защиты в Windows 2000

Защита в автономной системе Windows 2000 реализуется при помощи нескольких компонентов. Регистрацией в системе управляет программа winlogon, а аутентификацией занимаются Isass и msgina.dll. Результатом успешной регистрации в системе является новая оболочка с ассоци­ированным с ней маркером доступа. Этот процесс использует в реестре ключи SECURITY и SAM. Первый ключ определяет общую политику безопасности, а вто­рой ключ содержит информацию о защите для индивидуальных пользователей.

Как только пользователь регистрируется в системе, выполняется операция защиты при открытии объекта. Для каждого вызова ОрепХХХ требуется имя откры­ваемого объекта и набор прав доступа к нему. Во время обработки процедуры от­крытия объекта менеджер безопасности проверяет наличие у вызы­вающего процесса соответствующих прав доступа. Для этого он просматривает все маркеры доступа вызывающего процесса, а также список DACL, ассоциированный с объектом. Он просматривает по очереди элементы списка ACL. Как только он находит запись, соответствующую идентификатору SID вызывающего процесса или одной из его групп, поиск прав доступа считается законченным. Если вызыва­ющий процесс обладает необходимыми правами, объект открывается, в противном случае в открытии объекта отказывается.

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

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

Резюме

Структура операционной системы Windows 2000 включает в себя уровень аппа­ратных абстракций HAL, ядро, исполняющую систему и тонкий уровень систем­ных служб, перехватывающий входящие системные вызовы. Кроме того, опера­ционная система содержит множество драйверов устройств, включая файловую систему и интерфейс графических устройств GDI. Уровень HAL скрывает от верхних уровней определенные различия в аппаратуре. Ядро пытается скрыть от исполняющей системы остальные различия, чтобы сделать ее почти полностью машинно-независимой.

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

Операционная система Windows 2000 поддерживает процессы, задания, пото­ки и волокна. У процессов есть виртуальные адресные пространства, кроме того, процессы являются контейнерами ресурсов. Потоки представляют собой едини­цы исполнения и планируются операционной системой. Волокна являются уп­рощенными потоками, планируемыми полностью в пространстве пользователя. Задания представляют собой наборы процессов и используются для выделения квот ресурсов. При планировании используется приоритетный алгоритм, в кото­ром управление получает готовый поток с максимальным приоритетом.

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

Ввод-вывод осуществляется драйверами устройств, согласующимися с моде­лью Windows Driver Model. При запуске каждого драйвера инициализируется объект драйвера, содержащий адреса процедур, к которым может обращаться опе­рационная система, чтобы добавить новое устройство или выполнить операцию ввода-вывода. Драйверы могут собираться в стеки или действовать как фильтры.

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

Защита основывается на списках управления доступом ACL. У каждого про­цесса есть маркер управления доступом, идентифицирующий процесс, а также указывающий, какими особыми привилегиями он обладает. С каждым объектом ассоциирован дескриптор защиты. Дескриптор защиты указывает на список раз­граничительного управления доступом DACL, содержащий записи списка ACL, разрешающие или запрещающие доступ к этому объекту отдельным пользовате­лям или группам.